def METHOD_NAME(self):
    _fmt = '{:02X}' if self.maxval <= 0xFF else ('{:04X}' if self.maxval <= 0xFFFF else ('{:08X}' if self.maxval <= 0xFFFFFFFF else '{:016X}'))
    _str = f'{{:d}} hcall rax={_fmt},rbx={_fmt},rcx={_fmt},rdx={_fmt},rdi={_fmt},rsi={_fmt},r8={_fmt},r9={_fmt},r10={_fmt},r11={_fmt}'
    t = time.time()
    if self.random_order:
        self.logger.log(f'[*] Fuzzing {self.iterations:d} random hypercalls with random arguments...')
        for it in range(self.iterations):
            rax = random.randint(0, self.gprs['rax'])
            rbx = random.randint(0, self.gprs['rbx'])
            rcx = random.randint(0, self.gprs['rcx'])
            rdx = random.randint(0, self.gprs['rdx'])
            rdi = random.randint(0, self.gprs['rdi'])
            rsi = random.randint(0, self.gprs['rsi'])
            r8 = random.randint(0, self.gprs['r8'])
            r9 = random.randint(0, self.gprs['r9'])
            r10 = random.randint(0, self.gprs['r10'])
            r11 = random.randint(0, self.gprs['r11'])
            if _LOG_ALL_GPRS:
                self.logger.log(_str.format(it, rax, rbx, rcx, rdx, rdi, rsi, r8, r9, r10, r11))
            else:
                self.logger.log(f'{it:d} hcall')
            if _FLUSH_LOG_EACH_ITER:
                self.logger.flush()
            try:
                self.vmm.hypercall(rax, rbx, rcx, rdx, rdi, rsi, r8, r9, r10, r11)
            except:
                pass
    else:
        it = 0
        self.logger.log("[*] Fuzzing hypercalls with arguments exhaustively...")
        for rax in range(self.gprs['rax']):
            for rbx in range(self.gprs['rbx']):
                for rcx in range(self.gprs['rcx']):
                    for rdx in range(self.gprs['rdx']):
                        for rdi in range(self.gprs['rdi']):
                            for rsi in range(self.gprs['rsi']):
                                for r8 in range(self.gprs['r8']):
                                    for r9 in range(self.gprs['r9']):
                                        for r10 in range(self.gprs['r10']):
                                            for r11 in range(self.gprs['r11']):
                                                if _LOG_ALL_GPRS:
                                                    self.logger.log(_str.format(it, rax, rbx, rcx, rdx, rdi, rsi, r8, r9, r10, r11))
                                                else:
                                                    self.logger.log(f'{it:d} hcall')
                                                if _FLUSH_LOG_EACH_ITER:
                                                    self.logger.flush()
                                                try:
                                                    self.vmm.hypercall(rax, rbx, rcx, rdx, rdi, rsi, r8, r9, r10, r11)
                                                    it += 1
                                                except:
                                                    pass
    self.logger.log(f'[*] Finished fuzzing: time elapsed {time.time() - t:.3f}')
    return ModuleResult.WARNING