Function at 0x475350
Capabilities:
Log keystrokes
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x160
mov ebx, dword [ebp + 0x10]
mov edi, dword [ebp + 8]
test edi, edi
jne 0x4753e0
mov ecx, dword [0x99d624]
test ecx, ecx
je 0x4753e0
xor eax, eax
test ebx, ebx
je 0x47543f
mov dword [esp + 0x1c], ecx
mov edi, dword [0x99d61c]
mov eax, dword [edi]
mov ebx, dword [edi + 4]
cmp eax, ebx
je 0x475447
sub ebx, eax
mov ecx, dword [ebp + 0x10]
cmp ebx, ecx
cmovae ebx, ecx
push ebx
push eax
push dword [ebp + 0xc]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
add esp, 0xc
test ebx, ebx
mov eax, 0
je 0x47543f
mov esi, dword [edi]
lea eax, [esi + ebx]
mov ecx, dword [edi + 4]
sub ecx, eax
je 0x4753d7
push ecx
push eax
push esi
mov dword [esp + 0x28], ecx
call sub.api_ms_win_crt_private_l1_1_0.dll_memmove
mov ecx, dword [esp + 0x28]
add esp, 0xc
add esi, ecx
mov dword [edi + 4], esi
mov eax, ebx
jmp 0x47543f
cmp ebx, 0x1001
jb 0x475430
push edi
call sub.api_ms_win_crt_stdio_l1_1_0.dll__isatty
add esp, 4
test eax, eax
je 0x475430
push edi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__get_osfhandle]
add esp, 4
cmp eax, 0xffffffff
je 0x475430
mov esi, eax
mov dword [esp + 0x50], 0
lea eax, [esp + 0x50]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetConsoleMode]
test eax, eax
sete al
test esi, esi
sete cl
or cl, al
mov eax, 0x1000
cmp cl, 1
jne 0x475432
mov eax, ebx
push eax
push dword [ebp + 0xc]
push edi
call sub.api_ms_win_crt_stdio_l1_1_0.dll__read
add esp, 0xc
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
lea eax, [esp + 1]
mov dword [esp + 0x44], eax
xorps xmm0, xmm0
lea esi, [esp + 0x14]
lea edx, [esp + 0x20]
mov ecx, dword [sym.imp.KERNEL32.dll_ReadConsoleInputA]
mov dword [esp + 0x14], 0
movaps xmmword [esp + 0x20], xmm0
mov dword [esp + 0x30], 0
push esi
push 1
push edx
mov ebx, dword [esp + 0x28]
push ebx
call ecx
test eax, eax
mov edi, esi
mov esi, ebx
lea ebx, [esp + 0x20]
jne 0x4754d7
jmp 0x476230
cmp dword [esp + 0x24], 0
xorps xmm0, xmm0
mov eax, dword [sym.imp.KERNEL32.dll_ReadConsoleInputA]
jne 0x475603
mov dword [esp + 0x14], 0
movaps xmmword [esp + 0x20], xmm0
mov dword [esp + 0x30], 0
push edi
push 1
push ebx
push esi
call eax
test eax, eax
je 0x476230
mov eax, dword [esp + 0x14]
test eax, eax
je 0x4754f0
cmp eax, 1
jne 0x47550d
jmp 0x47551d
push 0
push 6
call fcn.004b9f30
add esp, 8
test al, al
jne 0x4755a2
mov eax, dword [esp + 0x14]
cmp eax, 1
je 0x47551d
push 0
push 6
call fcn.004b9f30
add esp, 8
test al, al
jne 0x475541
movzx eax, word [esp + 0x20]
cmp eax, 1
je 0x4754a0
cmp eax, 4
xorps xmm0, xmm0
mov eax, dword [sym.imp.KERNEL32.dll_ReadConsoleInputA]
jne 0x4754b3
jmp 0x4762d2
mov eax, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
call eax
mov edi, dword [eax]
sub esp, 0x14
movaps xmm0, xmmword [0x874420]
movups xmmword [esp + 4], xmm0
mov dword [esp], str.packages_modules_adb_sysdeps_win32.cpp
mov esi, ebx
lea ebx, [esp + 0x64]
mov ecx, ebx
call fcn.004b9f90
mov ecx, ebx
call fcn.004b9f60
push 0x31
push str.ReadConsoleInputA_did_not_return_one_input_record
push eax
call fcn.00402f60
add esp, 0xc
mov ecx, ebx
mov ebx, esi
call fcn.004ba060
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [eax], edi
lea edi, [esp + 0x14]
mov esi, dword [esp + 0x1c]
jmp 0x47551d
mov eax, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
call eax
mov edi, dword [eax]
sub esp, 0x14
movaps xmm0, xmmword [0x874410]
movups xmmword [esp + 4], xmm0
mov dword [esp], str.packages_modules_adb_sysdeps_win32.cpp
mov esi, ebx
lea ebx, [esp + 0x64]
mov ecx, ebx
call fcn.004b9f90
mov ecx, ebx
call fcn.004b9f60
push 0x1c
push str.ReadConsoleInputA_returned_0
push eax
call fcn.00402f60
add esp, 0xc
mov ecx, ebx
mov ebx, esi
call fcn.004ba060
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [eax], edi
lea edi, [esp + 0x14]
mov esi, dword [esp + 0x1c]
jmp 0x475504
cmp word [esp + 0x28], 0
jne 0x475622
push 0
push 6
call fcn.004b9f30
xorps xmm0, xmm0
add esp, 8
test al, al
jne 0x4761a1
movzx edx, word [esp + 0x2a]
movzx ebx, byte [esp + 0x2e]
mov ecx, dword [esp + 0x30]
test cl, 0xc
je 0x475662
mov eax, ecx
and eax, 3
je 0x475662
test bl, bl
je 0x475662
test cl, 1
jne 0x47565f
test cl, 2
je 0x475662
test cl, 8
jne 0x475729
mov eax, ecx
and eax, 4
xor eax, 0xfffffffd
and ecx, eax
jmp 0x475662
and ecx, 0xfffffff6
mov byte [esp + 0x1b], bl
movaps xmmword [esp], xmm0
mov esi, ecx
test ecx, 0x100
mov dword [esp + 0x40], edx
jne 0x4756b8
lea eax, [edx - 8]
cmp eax, 0xda
ja case.0x4756c9.14
mov ebx, 0x87588b
jmp dword [eax*4 + 0x8745ec]
movzx ecx, byte [esp + 0x1b]
test cl, cl
je 0x475731
mov byte [esp], cl
mov eax, esi
test al, 3
mov eax, ecx
jne 0x475a64
mov edi, 1
jmp 0x475fec
lea eax, [edx - 0xd]
cmp eax, 0x62
ja case.0x4756c9.14
mov ebx, 0x87584c
jmp dword [eax*4 + 0x874460]
mov eax, esi
test al, 0xc
mov ebx, 0x875848
mov eax, 0x87584a
cmove ebx, eax
jmp case.0x4756c9.35
mov ebx, esp
mov ecx, ebx
lea edx, [esp + 0x24]
push esi
mov edi, esi
call fcn.00477f80
add esp, 4
mov ecx, esi
test cl, 3
je 0x475d4f
test eax, eax
je case.0x4756c9.14
push eax
push ebx
lea eax, [esp + 9]
push eax
call sub.api_ms_win_crt_private_l1_1_0.dll_memmove
add esp, 0xc
mov byte [esp], 0x1b
mov edi, 2
jmp 0x475fee
and ecx, 0xfffffff5
jmp 0x475662
mov ebx, esi
test bl, 3
je 0x475d76
test bl, 0xc
setne al
shl al, 7
xorps xmm0, xmm0
movaps xmmword [esp + 0x60], xmm0
movaps xmmword [esp + 0x140], xmm0
movaps xmmword [esp + 0x130], xmm0
movaps xmmword [esp + 0x120], xmm0
movaps xmmword [esp + 0x110], xmm0
movaps xmmword [esp + 0x100], xmm0
movaps xmmword [esp + 0xf0], xmm0
movaps xmmword [esp + 0xe0], xmm0
movaps xmmword [esp + 0xd0], xmm0
movaps xmmword [esp + 0xc0], xmm0
movaps xmmword [esp + 0xb0], xmm0
movaps xmmword [esp + 0xa0], xmm0
movaps xmmword [esp + 0x90], xmm0
movaps xmmword [esp + 0x80], xmm0
movaps xmmword [esp + 0x70], xmm0
movaps xmmword [esp + 0x50], xmm0
mov ecx, ebx
shl cl, 3
and cl, 0x80
mov byte [esp + 0x60], cl
mov byte [esp + 0x61], al
mov eax, ebx
shr al, 7
mov byte [esp + 0x64], al
mov word [esp + 0x14], 0
movzx eax, word [esp + 0x2c]
push 0
lea ecx, [esp + 0x18]
push ecx
lea ecx, [esp + 0x58]
push ecx
push eax
push dword [esp + 0x50]
call dword [sym.imp.USER32.dll_ToAscii]
cmp eax, 1
jne 0x475a54
movzx eax, byte [esp + 0x14]
jmp 0x475a64
mov ebx, esp
mov ecx, ebx
lea edx, [esp + 0x24]
mov edi, esi
push esi
call fcn.00477f80
mov ecx, esi
add esp, 4
test cl, 3
je 0x475d4f
test cl, 0xc
je 0x475704
and ecx, 0x10
je 0x475d4f
jmp 0x475704
mov dword [esp], 0x7e355b1b
jmp 0x4759e9
mov dword [esp], 0x7e365b1b
jmp 0x4759e9
mov ebx, 0x875850
jmp case.0x4756c9.35
mov byte [esp + 2], 0x44
mov word [esp], 0x5b1b
mov edx, esi
mov ecx, esi
and ecx, 0x120
mov eax, esi
or eax, 0x10
cmp ecx, 0x20
cmovne eax, esi
mov ecx, eax
shr ecx, 4
and ecx, 1
lea edx, [ecx + 2]
test al, 3
cmove edx, ecx
lea ecx, [edx + 4]
test al, 0xc
cmove ecx, edx
test ecx, ecx
je 0x475ee9
mov word [esp + 2], 0x3b31
add cl, 0x31
mov byte [esp + 4], cl
mov byte [esp + 5], 0x44
mov edi, 6
jmp 0x475fec
mov byte [esp + 2], 0x41
mov word [esp], 0x5b1b
mov edx, esi
mov ecx, esi
and ecx, 0x120
mov eax, esi
or eax, 0x10
cmp ecx, 0x20
cmovne eax, esi
mov ecx, eax
shr ecx, 4
and ecx, 1
lea edx, [ecx + 2]
test al, 3
cmove edx, ecx
lea ecx, [edx + 4]
test al, 0xc
cmove ecx, edx
test ecx, ecx
je 0x475ee9
mov word [esp + 2], 0x3b31
add cl, 0x31
mov byte [esp + 4], cl
mov byte [esp + 5], 0x41
mov edi, 6
jmp 0x475fec
mov byte [esp + 2], 0x43
mov word [esp], 0x5b1b
mov edx, esi
mov ecx, esi
and ecx, 0x120
mov eax, esi
or eax, 0x10
cmp ecx, 0x20
cmovne eax, esi
mov ecx, eax
shr ecx, 4
and ecx, 1
lea edx, [ecx + 2]
test al, 3
cmove edx, ecx
lea ecx, [edx + 4]
test al, 0xc
cmove ecx, edx
test ecx, ecx
je 0x475ee9
mov word [esp + 2], 0x3b31
add cl, 0x31
mov byte [esp + 4], cl
mov byte [esp + 5], 0x43
mov edi, 6
jmp 0x475fec
mov byte [esp + 2], 0x42
mov word [esp], 0x5b1b
mov edx, esi
mov ecx, esi
and ecx, 0x120
mov eax, esi
or eax, 0x10
cmp ecx, 0x20
cmovne eax, esi
mov ecx, eax
shr ecx, 4
and ecx, 1
lea edx, [ecx + 2]
test al, 3
cmove edx, ecx
lea ecx, [edx + 4]
test al, 0xc
cmove ecx, edx
test ecx, ecx
je 0x475ee9
mov word [esp + 2], 0x3b31
add cl, 0x31
mov byte [esp + 4], cl
mov byte [esp + 5], 0x42
mov edi, 6
jmp 0x475fec
mov dword [esp], 0x7e325b1b
jmp 0x4759e9
mov dword [esp], 0x7e335b1b
mov edx, esi
mov ecx, esi
and ecx, 0x120
mov eax, esi
or eax, 0x10
cmp ecx, 0x20
cmovne eax, esi
mov ecx, eax
shr ecx, 4
and ecx, 1
lea edx, [ecx + 2]
test al, 3
cmove edx, ecx
lea ecx, [edx + 4]
test al, 0xc
cmove ecx, edx
test ecx, ecx
je 0x475a35
mov byte [esp + 3], 0x3b
add cl, 0x31
mov byte [esp + 4], cl
mov byte [esp + 5], 0x7e
mov edi, 6
jmp 0x475fec
mov edi, 4
jmp 0x475fec
mov ebx, 0x875864
push ebx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov edi, eax
jmp 0x475fee
movzx eax, byte [esp + 0x2e]
mov byte [esp], al
test al, al
je 0x475d76
mov byte [esp + 1], al
mov byte [esp], 0x1b
mov edi, 2
jmp 0x475fec
mov ebx, 0x87588d
jmp case.0x4756c9.35
mov ebx, 0x875891
jmp case.0x4756c9.35
mov ebx, 0x875875
jmp case.0x4756c9.35
mov ebx, 0x875895
jmp case.0x4756c9.35
mov ebx, 0x87589b
jmp case.0x4756c9.35
mov byte [esp + 2], 0x51
mov word [esp], 0x4f1b
mov edx, esi
mov eax, esi
shr eax, 4
and eax, 1
lea ecx, [eax + 2]
test dl, 3
cmove ecx, eax
lea eax, [ecx + 4]
test dl, 0xc
cmove eax, ecx
test eax, eax
je 0x475ee9
mov word [esp + 2], 0x3b31
add al, 0x31
mov byte [esp + 4], al
mov byte [esp + 5], 0x51
mov edi, 6
jmp 0x475fec
mov byte [esp + 4], 0x7e
mov dword [esp], 0x37315b1b
jmp 0x475fb0
mov byte [esp + 4], 0x7e
mov dword [esp], 0x33325b1b
jmp 0x475fb0
mov byte [esp + 4], 0x7e
mov dword [esp], 0x35325b1b
jmp 0x475fb0
mov eax, esi
test al, 3
mov eax, 0x875869
mov ebx, 0x875866
jmp 0x4756de
mov eax, esi
test al, 0x10
mov eax, 0x87586f
mov ebx, 0x87586b
jmp 0x4756de
mov eax, esi
test al, 0x10
mov eax, 0x875871
mov ebx, 0x875875
jmp 0x4756de
mov ebx, 0x875877
mov eax, esi
test al, 3
jne case.0x4756c9.35
mov eax, esi
test al, 0xc
mov eax, 0x87584a
mov ebx, 0x875848
jmp 0x4756de
mov ebx, 0x87587a
mov eax, esi
test al, 3
jne case.0x4756c9.35
mov edi, 1
mov ebx, esp
mov eax, esi
test al, 0xc
jne 0x475fee
mov ebx, 0x874e92
jmp case.0x4756c9.35
mov edx, esi
test dl, 0x10
jne 0x47604a
mov dword [esp], 0x7e355b1b
jmp 0x475cd8
mov edx, esi
test dl, 0x10
jne 0x476055
mov dword [esp], 0x7e365b1b
jmp 0x475cd8
mov eax, esi
test al, 0x10
mov eax, str.e_4
mov ebx, 0x875882
jmp 0x4756de
mov eax, esi
test al, 0x10
mov eax, str.e_1
mov ebx, str.70234689_
jmp 0x4756de
mov edx, esi
test dl, 0x10
jne 0x476060
mov byte [esp + 2], 0x44
mov word [esp], 0x5b1b
mov ecx, edx
and ecx, 0x120
mov eax, edx
or eax, 0x10
cmp ecx, 0x20
cmovne eax, edx
jmp 0x475885
mov edx, esi
test dl, 0x10
jne 0x47606b
mov byte [esp + 2], 0x41
mov word [esp], 0x5b1b
mov ecx, edx
and ecx, 0x120
mov eax, edx
or eax, 0x10
cmp ecx, 0x20
cmovne eax, edx
jmp 0x4758e2
mov edx, esi
test dl, 0x10
jne 0x476079
mov byte [esp + 2], 0x43
mov word [esp], 0x5b1b
mov ecx, edx
and ecx, 0x120
mov eax, edx
or eax, 0x10
cmp ecx, 0x20
cmovne eax, edx
jmp 0x47593f
mov edx, esi
test dl, 0x10
jne 0x476087
mov byte [esp + 2], 0x42
mov word [esp], 0x5b1b
mov ecx, edx
and ecx, 0x120
mov eax, edx
or eax, 0x10
cmp ecx, 0x20
cmovne eax, edx
jmp 0x47599c
mov edx, esi
test dl, 0x10
jne 0x476095
mov dword [esp], 0x7e325b1b
jmp 0x475cd8
push 2
push 0x6e
call dword [sym.imp.USER32.dll_MapVirtualKeyA]
mov edx, esi
test dl, 0x10
jne 0x4760a3
mov dword [esp], 0x7e335b1b
mov ecx, edx
and ecx, 0x120
mov eax, edx
or eax, 0x10
cmp ecx, 0x20
cmovne eax, edx
jmp 0x4759fe
mov ebx, 0x875882
jmp case.0x4756c9.35
mov ebx, 0x87588f
jmp case.0x4756c9.35
mov ebx, 0x875893
jmp case.0x4756c9.35
mov ebx, str.70234689_
jmp case.0x4756c9.35
mov ebx, 0x875897
jmp case.0x4756c9.35
mov ebx, 0x875899
jmp case.0x4756c9.35
mov ebx, 0x87589d
jmp case.0x4756c9.35
movzx eax, byte [esp + 0x1b]
mov ecx, eax
test al, al
je 0x4760b8
mov byte [esp], cl
xor eax, eax
test cl, cl
setne al
mov edi, 1
mov ebx, esp
test eax, eax
jne 0x475fee
movzx eax, byte [esp + 0x1b]
test al, al
mov ebx, esi
je 0x475d76
mov byte [esp], al
mov edi, 1
jmp 0x475fec
mov eax, dword [0x86159c]
test byte [eax], 0x80
je 0x476021
push 0
push 1
call fcn.004b9f30
add esp, 8
test al, al
je 0x476021
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov esi, ebx
mov ebx, dword [eax]
sub esp, 0x14
movaps xmm0, xmmword [0x874440]
movups xmmword [esp + 4], xmm0
mov dword [esp], str.packages_modules_adb_sysdeps_win32.cpp
lea edi, [esp + 0x28]
mov ecx, edi
call fcn.004b9f90
mov ecx, edi
call fcn.004b9f60
mov edi, eax
test esi, 0x100
mov eax, 0x875949
mov ecx, 0x87594e
cmove eax, ecx
push eax
push dword [esp + 0x44]
push str._console_read:_unknown_virtual_key_code:__d__enhanced:__s
lea eax, [esp + 0x5c]
push eax
call fcn.004ba8a0
add esp, 0x10
movzx eax, byte [esp + 0x50]
test al, 1
je 0x4761f6
mov ecx, dword [esp + 0x58]
mov eax, dword [esp + 0x54]
jmp 0x4761fc
mov byte [esp + 2], 0x50
mov word [esp], 0x4f1b
mov edx, esi
mov eax, esi
shr eax, 4
and eax, 1
lea ecx, [eax + 2]
test dl, 3
cmove ecx, eax
lea eax, [ecx + 4]
test dl, 0xc
cmove eax, ecx
test eax, eax
je 0x475ee9
mov word [esp + 2], 0x3b31
add al, 0x31
mov byte [esp + 4], al
mov byte [esp + 5], 0x50
mov edi, 6
jmp 0x475fec
mov byte [esp + 2], 0x52
mov word [esp], 0x4f1b
mov edx, esi
mov eax, esi
shr eax, 4
and eax, 1
lea ecx, [eax + 2]
test dl, 3
cmove ecx, eax
lea eax, [ecx + 4]
test dl, 0xc
cmove eax, ecx
test eax, eax
je 0x475ee9
mov word [esp + 2], 0x3b31
add al, 0x31
mov byte [esp + 4], al
mov byte [esp + 5], 0x52
mov edi, 6
jmp 0x475fec
mov byte [esp + 2], 0x53
mov word [esp], 0x4f1b
mov edx, esi
mov eax, esi
shr eax, 4
and eax, 1
lea ecx, [eax + 2]
test dl, 3
cmove ecx, eax
lea eax, [ecx + 4]
test dl, 0xc
cmove eax, ecx
test eax, eax
je 0x475ee9
mov word [esp + 2], 0x3b31
add al, 0x31
mov byte [esp + 4], al
mov byte [esp + 5], 0x53
mov edi, 6
jmp 0x475fec
mov edi, 3
jmp 0x475fec
mov byte [esp + 4], 0x7e
mov dword [esp], 0x35315b1b
jmp 0x475fb0
mov byte [esp + 4], 0x7e
mov dword [esp], 0x38315b1b
jmp 0x475fb0
mov byte [esp + 4], 0x7e
mov dword [esp], 0x39315b1b
jmp 0x475fb0
mov byte [esp + 4], 0x7e
mov dword [esp], 0x30325b1b
jmp 0x475fb0
mov byte [esp + 4], 0x7e
mov dword [esp], 0x31325b1b
jmp 0x475fb0
mov byte [esp + 4], 0x7e
mov dword [esp], 0x34325b1b
jmp 0x475fb0
mov byte [esp + 4], 0x7e
mov dword [esp], 0x36325b1b
jmp 0x475fb0
mov byte [esp + 4], 0x7e
mov dword [esp], 0x38325b1b
jmp 0x475fb0
mov byte [esp + 4], 0x7e
mov dword [esp], 0x39325b1b
jmp 0x475fb0
mov byte [esp + 4], 0x7e
mov dword [esp], 0x31335b1b
jmp 0x475fb0
mov byte [esp + 4], 0x7e
mov dword [esp], 0x32335b1b
jmp 0x475fb0
mov byte [esp + 4], 0x7e
mov dword [esp], 0x33335b1b
jmp 0x475fb0
mov byte [esp + 4], 0x7e
mov dword [esp], 0x34335b1b
mov edx, esi
mov eax, esi
shr eax, 4
and eax, 1
lea ecx, [eax + 2]
test dl, 3
cmove ecx, eax
lea eax, [ecx + 4]
test dl, 0xc
cmove eax, ecx
test eax, eax
je 0x475fe7
mov byte [esp + 4], 0x3b
add al, 0x31
mov byte [esp + 5], al
mov byte [esp + 6], 0x7e
mov edi, 7
jmp 0x475fec
mov edi, 5
mov ebx, esp
sub word [esp + 0x28], 1
jb 0x476021
add edi, ebx
nop dword [eax + eax]
mov ecx, dword [0x99d61c]
mov eax, dword [ecx + 4]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x48]
push edi
push ebx
push eax
call fcn.00422dc0
sub word [esp + 0x28], 1
jae 0x476000
mov edi, dword [0x99d61c]
mov eax, dword [edi]
mov ebx, dword [edi + 4]
cmp eax, ebx
xorps xmm0, xmm0
lea esi, [esp + 0x14]
lea edx, [esp + 0x20]
mov ecx, dword [sym.imp.KERNEL32.dll_ReadConsoleInputA]
je 0x475460
jmp 0x475394
mov byte [esp], 0x39
mov edi, 1
jmp 0x475fec
mov byte [esp], 0x33
mov edi, 1
jmp 0x475fec
mov byte [esp], 0x34
mov edi, 1
jmp 0x475fec
mov byte [esp], 0x38
mov edi, 1
jmp 0x475fec
mov byte [esp], 0x36
mov edi, 1
jmp 0x475fec
mov byte [esp], 0x32
mov edi, 1
jmp 0x475fec
mov byte [esp], 0x30
mov edi, 1
jmp 0x475fec
test al, al
je case.0x4756c9.14
mov byte [esp], al
mov edi, 1
jmp 0x475fec
mov eax, esi
test al, 0xc
je 0x476190
mov edx, esi
test dl, 3
setne al
shl al, 7
xorps xmm0, xmm0
movaps xmmword [esp + 0x60], xmm0
movaps xmmword [esp + 0x140], xmm0
movaps xmmword [esp + 0x130], xmm0
movaps xmmword [esp + 0x120], xmm0
movaps xmmword [esp + 0x110], xmm0
movaps xmmword [esp + 0x100], xmm0
movaps xmmword [esp + 0xf0], xmm0
movaps xmmword [esp + 0xe0], xmm0
movaps xmmword [esp + 0xd0], xmm0
movaps xmmword [esp + 0xc0], xmm0
movaps xmmword [esp + 0xb0], xmm0
movaps xmmword [esp + 0xa0], xmm0
movaps xmmword [esp + 0x90], xmm0
movaps xmmword [esp + 0x80], xmm0
movaps xmmword [esp + 0x70], xmm0
movaps xmmword [esp + 0x50], xmm0
mov ecx, edx
shl cl, 3
and cl, 0x80
mov byte [esp + 0x60], cl
mov byte [esp + 0x62], al
mov eax, edx
shr al, 7
mov byte [esp + 0x64], al
mov word [esp + 0x14], 0
movzx eax, word [esp + 0x2c]
push 0
lea ecx, [esp + 0x18]
push ecx
lea ecx, [esp + 0x58]
push ecx
push eax
push 0x6e
call dword [sym.imp.USER32.dll_ToAscii]
cmp eax, 1
jne 0x476197
movzx eax, byte [esp + 0x14]
jmp 0x475d69
xor ecx, ecx
jmp 0x475d45
movzx ecx, byte [esp + 0x2e]
jmp 0x475d45
mov esi, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
call esi
mov edi, dword [eax]
sub esp, 0x14
movaps xmm0, xmmword [0x874430]
movups xmmword [esp + 4], xmm0
mov dword [esp], str.packages_modules_adb_sysdeps_win32.cpp
lea ebx, [esp + 0x64]
mov ecx, ebx
call fcn.004b9f90
mov ecx, ebx
call fcn.004b9f60
push 0x3d
push str.ReadConsoleInputA_returned_a_key_event_with_zero_repeat_count
push eax
call fcn.00402f60
add esp, 0xc
mov ecx, ebx
call fcn.004ba060
call esi
xorps xmm0, xmm0
mov dword [eax], edi
jmp 0x475622
shr eax, 1
lea ecx, [esp + 0x51]
push eax
push ecx
push edi
call fcn.00402f60
add esp, 0xc
test byte [esp + 0x50], 1
je 0x47621a
push dword [esp + 0x58]
call fcn.0051c570
add esp, 4
lea ecx, [esp + 0x14]
call fcn.004ba060
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [eax], ebx
jmp 0x476021
mov edi, 5
mov eax, dword [0x86159c]
test byte [eax], 0x80
je 0x4762d7
push 0
push 1
call fcn.004b9f30
add esp, 8
test al, al
je 0x4762d7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ebx, dword [eax]
sub esp, 0x14
movaps xmm0, xmmword [0x874450]
movups xmmword [esp + 4], xmm0
mov dword [esp], str.packages_modules_adb_sysdeps_win32.cpp
lea esi, [esp + 0x60]
mov ecx, esi
call fcn.004b9f90
mov ecx, esi
call fcn.004b9f60
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, esp
push eax
push ecx
call fcn.004bbe60
add esp, 8
test byte [esp], 1
je 0x4762a9
mov eax, dword [esp + 8]
mov dword [esp + 0x44], eax
push dword [esp + 0x44]
push str._get_key_event_record:_ReadConsoleInputA___failed:__s_n
lea eax, [esp + 0x58]
push eax
call fcn.004ba8a0
add esp, 0xc
movzx eax, byte [esp + 0x50]
test al, 1
je 0x4762e9
mov ecx, dword [esp + 0x58]
mov eax, dword [esp + 0x54]
jmp 0x4762ef
mov edi, 4
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [eax], edi
mov eax, 0xffffffff
jmp 0x47543f
shr eax, 1
lea ecx, [esp + 0x51]
push eax
push ecx
push esi
call fcn.00402f60
add esp, 0xc
test byte [esp + 0x50], 1
je 0x47630d
push dword [esp + 0x58]
call fcn.0051c570
add esp, 4
test byte [esp], 1
je 0x47631f
push dword [esp + 8]
call fcn.0051c570
add esp, 4
lea ecx, [esp + 0x4c]
call fcn.004ba060
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [eax], ebx
jmp 0x4762d7