Function at 0x41d816
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x469e67
mov eax, dword fs:[0]
push eax
mov eax, 0x63b0
call fcn.00444d50
mov eax, dword [0x4ca578]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x63b0], ebx
mov eax, dword [ebp + 0x18]
mov esi, dword [ebx + 0x7c]
mov ecx, dword [ebp + 8]
mov edi, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [ebp - 0x63a4], eax
mov eax, dword [ebx + 0x78]
cmp eax, esi
mov dword [ebp - 0x63b8], esi
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0x63a8], ecx
mov dword [ebp - 0x63b4], edi
mov dword [ebp - 0x63ac], edx
mov dword [ebp - 0x63bc], eax
je 0x41d499
push dword [ebp - 0x63a4]
mov ecx, dword [eax]
push edx
push edi
push esi
mov eax, dword [ecx]
push dword [ebp - 0x63a8]
mov eax, dword [eax]
call eax
test al, al
jne 0x41dcc5
mov eax, dword [ebp - 0x63bc]
mov edx, dword [ebp - 0x63ac]
add eax, 4
mov dword [ebp - 0x63bc], eax
cmp eax, dword [ebp - 0x63b8]
jne 0x41d457
mov ecx, dword [ebp - 0x63a8]
cmp esi, 0x502
ja 0x41dcd6
je 0x41dccc
cmp esi, 0xff
ja 0x41d69b
je 0x41d667
add esi, 0xfffffffe
cmp esi, 0x80
ja case.0x41dcf7.1285
movzx eax, byte [esi + 0x41e6b0]
jmp dword [eax*4 + 0x41e694]
test edx, edx
je case.0x41dcf7.1285
mov ecx, ebx
call fcn.004209a0
mov al, 1
jmp 0x41d7f8
push 0x7f
lea eax, [ebp - 0x90]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetClassNameA]
cmp eax, 0x80
jae 0x41e68a
mov byte [ebp + eax - 0x90], 0
lea eax, [ebp - 0x90]
push 0x4736f4
push eax
call fcn.00453558
add esp, 8
test eax, eax
je 0x41d55f
lea eax, [ebp - 0x90]
push 0x47370c
push eax
call fcn.00453558
add esp, 8
test eax, eax
je 0x41d55f
lea eax, [ebp - 0x90]
push 0x47372c
push eax
call fcn.00453558
add esp, 8
test eax, eax
jne case.0x41dcf7.1285
push dword [ebp - 0x63a8]
mov ecx, 0x511bf0
call fcn.00416590
dec dword [0x53d410]
mov ecx, ebx
cmp dword [0x511ff0], 0
setne al
movzx eax, al
push eax
call fcn.0041c580
cmp dword [0x53d410], 0
jne 0x41dcc5
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
mov al, 1
jmp 0x41d7f8
lea eax, [ebp - 0x50]
push eax
push ecx
call dword [sym.imp.USER32.dll_BeginPaint]
lea eax, [ebp - 0x50]
push eax
push dword [ebp - 0x63a8]
call dword [sym.imp.USER32.dll_EndPaint]
mov al, 1
jmp 0x41d7f8
cmp dword [0x511ff0], 0
mov ecx, ebx
setne al
movzx eax, al
push eax
call fcn.0041c580
push 0
push 0xffffffffffffffeb
push dword [ebp - 0x63a8]
call dword [sym.imp.USER32.dll_SetWindowLongA]
test ebx, ebx
je 0x41d606
mov ecx, ebx
call fcn.0041aa10
push 0x100
push ebx
call fcn.00444ae6
add esp, 8
mov ecx, dword [0x5a7c84]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
add dword [eax + 4], 0xffffffff
jne case.0x41dcf7.1285
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
jmp case.0x41dcf7.1285
push 3
push str.__restore
call dword [sym.imp.KERNEL32.dll_RegisterApplicationRestart]
mov eax, dword [ebp - 0x63a4]
mov dword [eax], 1
mov al, 1
jmp 0x41d7f8
cmp edi, 1
jne case.0x41dcf7.1285
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
mov al, 1
jmp 0x41d7f8
cmp dword [0x512074], 0
je case.0x41dcf7.1285
cmp dword [0x51d6b4], 0
jne case.0x41dcf7.1285
cmp dword [0x51d6b8], 0
jne case.0x41dcf7.1285
push edx
mov ecx, ebx
call fcn.0041c6a0
jmp case.0x41dcf7.1285
cmp esi, 0x111
ja 0x41db38
je 0x41d8c8
sub esi, 0x100
je 0x41d881
sub esi, 1
je 0x41d864
sub esi, 3
jne case.0x41dcf7.1285
add edi, 0xffffffaf
cmp edi, 0x29
ja case.0x41dcf7.1285
movzx eax, byte [edi + 0x41e750]
jmp dword [eax*4 + 0x41e734]
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
push 0x10
call esi
test ax, ax
jns case.0x41dcf7.1285
push 0x12
call esi
test ax, ax
jns case.0x41dcf7.1285
push 0x11
call esi
test ax, ax
jns case.0x41dcf7.1285
push 0x471e04
push dword [0x504e50]
call fcn.00440eb0
add esp, 8
jmp 0x41e5da
push 0x12
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns case.0x41dcf7.1285
mov al, 1
jmp 0x41d7f8
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
push 0x10
call esi
test ax, ax
jns case.0x41dcf7.1285
push 0x12
call esi
test ax, ax
jns case.0x41dcf7.1285
push 0x11
call esi
test ax, ax
jns case.0x41dcf7.1285
push 0x1000
push 0x471e1c
push 0x471e38
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp case.0x41dcf7.1285
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
push 0x10
mov dword [0x51d838], 0xa
call esi
test ax, ax
jns case.0x41dcf7.1285
push 0x11
call esi
test ax, ax
jns case.0x41dcf7.1285
push str.Shutdown__Main_:_Hotkey_Ctrl__Shift__q
push dword [0x504e50]
call fcn.00440eb0
add esp, 8
jmp 0x41e5da
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
push 0x10
call esi
test ax, ax
jns case.0x41dcf7.1285
push 0x12
call esi
test ax, ax
js case.0x41dcf7.1285
push 0x11
call esi
test ax, ax
jns case.0x41dcf7.1285
push 0x471e90
push dword [0x504e50]
call fcn.00440eb0
add esp, 8
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00444ab5
mov esp, ebp
pop ebp
ret 0x14
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
push 0x10
call esi
test ax, ax
jns case.0x41dcf7.1285
push 0x12
call esi
test ax, ax
js case.0x41dcf7.1285
push 0x11
call esi
test ax, ax
jns case.0x41dcf7.1285
push 0x471ea8
push dword [0x504e50]
call fcn.00440eb0
add esp, 8
push 1
push dword [ebp - 0x63a8]
call dword [sym.imp.USER32.dll_EnableWindow]
mov dword [0x540610], 0
jmp case.0x41dcf7.1285
test edx, 0x40000000
jne case.0x41dcf7.1285
push edi
lea eax, [ebp - 0x38]
mov ecx, ebx
push eax
call fcn.0041caf0
mov dword [ebp - 4], 1
jmp 0x41d8a0
test edx, 0x40000000
jne case.0x41dcf7.1285
push edi
lea eax, [ebp - 0x38]
mov ecx, ebx
push eax
call fcn.0041caf0
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x41d8bb
mov eax, dword [ecx]
call dword [eax + 8]
lea ecx, [ebp - 0x38]
call fcn.00408110
mov al, 1
jmp 0x41d7f8
lea ecx, [ebp - 0x38]
call fcn.00408110
jmp case.0x41dcf7.1285
cmp dword [ebx + 0x50], 0
jne 0x41d8f0
movzx ecx, di
movzx eax, cx
add eax, 0xfffffbb0
cmp eax, 0x43
ja case.0x41dcf7.1285
movzx eax, byte [eax + 0x41e79c]
jmp dword [eax*4 + 0x41e77c]
movzx eax, di
mov edx, eax
add eax, 0xfffffba4
mov ecx, edx
cmp eax, 0x3b
ja case.0x41d908.1117
movzx eax, byte [eax + 0x41e7f4]
jmp dword [eax*4 + 0x41e7e0]
mov ecx, dword [ebx + 0x48]
lea edx, [ebp - 0x63a4]
mov dword [ebp - 0x63a4], 0
push edx
push ecx
mov eax, dword [ecx]
mov dword [ebp - 4], 2
call dword [eax + 0x14]
push str.Browser_version_after_webview_created
push dword [0x504e50]
call fcn.00440eb0
mov eax, dword [ebp - 0x63a4]
add esp, 8
mov dword [ebp - 4], 0xffffffff
test eax, eax
je 0x41e683
push eax
mov dword [ebp - 4], 4
call dword [sym.imp.ole32.dll_CoTaskMemFree]
mov al, 1
jmp 0x41d7f8
push str.IDM_CLOSE_WEBVIEW
push dword [0x504e50]
call fcn.00440eb0
add esp, 8
mov ecx, ebx
push 0
call fcn.0041c580
mov al, 1
jmp 0x41d7f8
push str.IDM_CLOSE_WEBVIEW_CLEANUP
push dword [0x504e50]
call fcn.00440eb0
add esp, 8
mov ecx, ebx
push 1
call fcn.0041c580
mov al, 1
jmp 0x41d7f8
push str.IDM_SCENARIO_POST_WEB_MESSAGE
push dword [0x504e50]
call fcn.00440eb0
push 0x38
call fcn.00444d7b
add esp, 0xc
mov dword [ebp - 0x63b4], eax
mov dword [ebp - 4], 5
test eax, eax
je 0x41d9ea
push ebx
mov ecx, eax
call fcn.0042f8a0
mov ecx, eax
jmp 0x41d9ec
xor ecx, ecx
mov edx, dword [ebx + 0x7c]
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x63b8], ecx
cmp edx, dword [ebx + 0x80]
je 0x41da11
mov dword [edx], ecx
mov al, 1
add dword [ebx + 0x7c], 4
jmp 0x41d7f8
lea ecx, [ebp - 0x63b8]
push ecx
push edx
lea ecx, [ebx + 0x78]
call fcn.0041a290
mov al, 1
jmp 0x41d7f8
push 0
push 0x41c420
push dword [ebx]
push 0x44f
push dword [0x504e48]
call dword [sym.imp.USER32.dll_DialogBoxParamA]
mov al, 1
jmp 0x41d7f8
lea eax, [ebp - 0x63a4]
mov dword [ebp - 0x63a4], 0
push eax
push 0
call fcn.004015e0
mov eax, dword [ebp - 0x63a4]
test eax, eax
je 0x41e683
push eax
mov dword [ebp - 4], 7
call dword [sym.imp.ole32.dll_CoTaskMemFree]
mov al, 1
jmp 0x41d7f8
cmp dword [0x511ff0], 0
mov ecx, ebx
setne al
movzx eax, al
push eax
call fcn.0041c580
push dword [ebx]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov al, 1
jmp 0x41d7f8
push 0
mov ecx, ebx
call fcn.0041e8b0
mov al, 1
jmp 0x41d7f8
cmp byte [ebx + 0xd8], 0
sete al
mov byte [ebx + 0xd8], al
mov al, 1
jmp 0x41d7f8
push 0x100
call fcn.00444d7b
mov esi, eax
add esp, 4
mov dword [ebp - 0x63b4], esi
mov dword [ebp - 4], 8
test esi, esi
je 0x41e683
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0x63b8], esp
mov dword [ecx + 0x24], 0
push 0
sub esp, 0x18
mov byte [ebp - 4], 9
mov ecx, esp
push 0x46d9ec
call fcn.00407fc0
mov ecx, esi
mov byte [ebp - 4], 8
call fcn.0041a510
mov al, 1
jmp 0x41d7f8
call fcn.00408260
mov al, 1
jmp 0x41d7f8
cmp esi, 0x112
je 0x41dcad
cmp esi, 0x2b1
jne case.0x41dcf7.1285
dec edi
xor esi, esi
cmp edi, 7
ja case.0x41db5c.5
jmp dword [edi*4 + 0x41e830]
push 0x472144
push dword [0x504e50]
call fcn.00440eb0
add esp, 8
cmp dword [0x49838c], esi
jne case.0x41db5c.5
push 0
push 0
push 2
push 4
push 0x46ea54
mov ecx, 0x511bf0
call fcn.004155d0
jmp case.0x41db5c.5
push 0x472160
jmp 0x41dbdb
push 0x47217c
push dword [0x504e50]
call fcn.00440eb0
mov esi, 1
jmp 0x41dbe6
push 0x47219c
jmp 0x41dbdb
push 0x4721b8
push dword [0x504e50]
call fcn.00440eb0
add esp, 8
mov edi, 1
jmp 0x41dbeb
push 0x4721d4
push dword [0x504e50]
call fcn.00440eb0
add esp, 8
xor edi, edi
cmp dword [0x5420dc], 0
je case.0x41dcf7.1285
test esi, esi
je 0x41dc50
mov eax, dword [ebx + 0x50]
push 0x4721f4
push eax
mov ecx, dword [eax]
call dword [ecx + 0x14]
push 0
push 0
push 2
push 7
push 0x47220c
mov ecx, 0x511bf0
mov dword [0x53e6a4], 1
call fcn.004155d0
push 0x472240
push 0x4722c0
mov ecx, 0x511bf0
call fcn.00418f80
mov ecx, ebx
call fcn.0041c560
mov ecx, 0x511bf0
call fcn.00411b20
cmp dword [0x51207c], 0
jne case.0x41dcf7.1285
test edi, edi
je case.0x41dcf7.1285
mov eax, dword [ebx + 0x50]
push 0x4721f4
push eax
mov ecx, dword [eax]
call dword [ecx + 0x14]
push 0
push 0
push 2
push 3
push 0x46e414
mov ecx, 0x511bf0
mov dword [0x53e6a4], 1
call fcn.004155d0
push 0x4722d8
push 0x472308
mov ecx, 0x511bf0
call fcn.00418f80
jmp 0x41e5da
cmp edi, 0xf060
jne case.0x41dcf7.1285
cmp ecx, dword [0x51b580]
jne case.0x41dcf7.1285
mov al, 1
jmp 0x41d7f8
call fcn.00408e30
jmp case.0x41dcf7.1285
cmp esi, 0x8000
ja case.0x41dcf7.1285
je 0x41e650
add esi, 0xfffffafd
cmp esi, 0x16
ja case.0x41dcf7.1285
jmp dword [esi*4 + 0x41e850]
push 0x800
push 0x40
mov dword [0x540614], edx
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
push 0x104
mov esi, eax
push esi
push dword [ebp - 0x63ac]
push dword [0x504e50]
call fcn.00440810
add esp, 0x10
test eax, eax
jne 0x41dd34
mov word [esi], ax
push 0
push 3
push 2
push 5
push esi
mov ecx, 0x511bf0
call fcn.004155d0
push esi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
jmp case.0x41dcf7.1285
push 0x802
push 0x40
mov dword [0x540614], edx
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
push 0x104
mov esi, eax
push esi
push dword [ebp - 0x63ac]
push dword [0x504e50]
call fcn.00440810
add esp, 0x10
test eax, eax
jne 0x41dd89
mov word [esi], ax
push 0
push 2
jmp 0x41dd38
push 0x471ec0
push dword [0x504e50]
mov dword [0x51d838], 0xa
mov dword [0x506050], 1
call fcn.00440eb0
add esp, 8
jmp 0x41e5da
push 0x471edc
jmp 0x41d7e8
push edi
lea eax, [ebp - 0x194]
push 0x104
push eax
call fcn.0044a958
add esp, 0xc
push dword [ebp - 0x63ac]
lea eax, [ebp - 0x194]
mov ecx, ebx
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.0041f8e0
lea ecx, [ebp - 0x38]
call fcn.00408110
jmp case.0x41dcf7.1285
push 0x800
push 1
call fcn.0044aad9
push edi
mov esi, eax
push 0x800
push esi
call fcn.0044a958
add esp, 0x14
mov ecx, ebx
push dword [ebp - 0x63ac]
push esi
call fcn.0041f790
jmp case.0x41dcf7.1285
push 0x800
push 1
call fcn.0044aad9
push 0x800
push 1
mov edi, eax
call fcn.0044aad9
push dword [ebp - 0x63b4]
mov esi, eax
push 0x800
push edi
call fcn.0044a958
push dword [ebp - 0x63ac]
push 0x800
push esi
call fcn.0044a958
push 0x5410d0
push esi
push edi
call fcn.00408eb0
add esp, 0x34
jmp case.0x41dcf7.1285
cmp dword [0x540790], 0
jne 0x41df82
push 0x800
push 0x40
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
push 0
push 0
push 0x104
mov esi, eax
push esi
push 0xffffffffffffffff
push dword [0x51ccd8]
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
push 0x64
push 0x515038
mov ecx, 0x4d2e1c
call fcn.004077e0
push eax
push 0x64
push 0x516820
call fcn.0044aace
add esp, 0x10
mov ecx, 0x4d2e1c
push 0x1000
push 0x471e1c
push esi
push 0x471ef4
push 0x470a28
push 0x515164
call fcn.00407920
push eax
push 0x471f04
push 0x470a28
push 0x516820
push 0x471f10
push 0x470a28
push 0x51509c
mov ecx, 0x4d2e1c
call fcn.004077a0
push eax
push 0x471f20
push 0x470a28
mov ecx, 0x4d2e1c
call fcn.004078c0
push eax
push 0x471f30
push 0x470a28
mov ecx, 0x511bf0
call fcn.004146e0
push eax
push 0x471f44
push 0x470a28
push 0x504ed8
push 0x471f54
push 0x14
push ebx
call fcn.00421810
add esp, 0x58
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp case.0x41dcf7.1285
mov dword [0x540790], 0
jmp case.0x41dcf7.1285
cmp dword [0x512058], 0
mov ecx, dword [ebx + 0xf4]
mov eax, dword [ecx]
je 0x41dfd0
push 1
push ecx
call dword [eax + 0x30]
mov eax, dword [ebx + 0x50]
push eax
mov ecx, dword [eax]
call dword [ecx + 0xcc]
push 1
push dword [0x504e50]
call fcn.00440680
mov dword [0x53e6cc], 1
jmp 0x41d7f3
push 0
push ecx
call dword [eax + 0x30]
jmp case.0x41dcf7.1285
push str.WM_GO_TO_DEFAULT_URL_call_initiated
push dword [0x504e50]
call fcn.00440eb0
lea eax, [ebp - 0x38]
mov dword [ebp - 0x38], vtable.std::_Func_impl_no_alloc_class__lambda_ece3fe955f81dbb901b556f815fa98bf___void___.0
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x14], eax
push 0x28
mov dword [ebp - 4], 0xa
call fcn.00444d7b
mov esi, eax
add esp, 0xc
mov dword [ebp - 0x63b4], esi
mov byte [ebp - 4], 0xb
test esi, esi
je 0x41e038
mov dword [esi + 0x24], 0
mov ecx, dword [ebp - 0x14]
mov byte [ebp - 4], 0xc
test ecx, ecx
je 0x41e03a
mov eax, dword [ecx]
push esi
call dword [eax]
mov dword [esi + 0x24], eax
jmp 0x41e03a
xor esi, esi
push 0
push esi
push 0x8000
push dword [ebx]
call dword [sym.imp.USER32.dll_PostMessageA]
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je case.0x41dcf7.1285
mov edx, dword [ecx]
lea eax, [ebp - 0x38]
cmp ecx, eax
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
jmp case.0x41dcf7.1285
mov ebx, dword [ebx + 0x50]
push 0
push 0
push 0xffffffffffffffff
push 0x514b34
push 0
push 3
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov edi, eax
lea ecx, [edi - 1]
push ecx
push 0
call dword [sym.imp.OLEAUT32.dll_SysReAllocStringLen]
mov esi, eax
test esi, esi
je 0x41e0b7
push edi
push esi
push 0xffffffffffffffff
push 0x514b34
push 0
push 3
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
cmp eax, edi
je 0x41e0b7
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
xor esi, esi
mov eax, dword [ebx]
push esi
push ebx
call dword [eax + 0x14]
push str.WM_GO_TO_ALTERNATE_URL_completed
jmp 0x41d7e8
mov ebx, dword [ebx + 0x50]
push 0
push 0
push 0xffffffffffffffff
push 0x5168e8
push 0
push 3
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov edi, eax
lea ecx, [edi - 1]
push ecx
push 0
call dword [sym.imp.OLEAUT32.dll_SysReAllocStringLen]
mov esi, eax
test esi, esi
je 0x41e114
push edi
push esi
push 0xffffffffffffffff
push 0x5168e8
push 0
push 3
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
cmp eax, edi
je 0x41e114
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
xor esi, esi
mov eax, dword [ebx]
push esi
push ebx
call dword [eax + 0x14]
push str.WM_GO_TO_DYNAMIC_ALTERNATE_URL_completed
jmp 0x41d7e8
push edi
push 0x104
push 0x540688
call fcn.0044a958
mov ebx, dword [ebx + 0x50]
add esp, 0xc
push 0
push 0
push 0xffffffffffffffff
push 0x540688
push 0
push 3
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov edi, eax
lea ecx, [edi - 1]
push ecx
push 0
call dword [sym.imp.OLEAUT32.dll_SysReAllocStringLen]
mov esi, eax
test esi, esi
je 0x41e184
push edi
push esi
push 0xffffffffffffffff
push 0x540688
push 0
push 3
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
cmp eax, edi
je 0x41e184
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
xor esi, esi
mov eax, dword [ebx]
push esi
push ebx
call dword [eax + 0x14]
jmp case.0x41dcf7.1285
mov eax, dword [0x471fe4]
mov dword [ebp - 0x639c], eax
mov ax, word [0x471fe8]
push 0x1ff8
mov word [ebp - 0x6398], ax
lea eax, [ebp - 0x6396]
push 0
push eax
call fcn.00447700
add esp, 0xc
push 0x51c2dc
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameA]
push edi
mov dword [ebp - 0x63b4], eax
lea eax, [ebp - 0x194]
push 0x104
push eax
call fcn.0044a958
add esp, 0xc
cmp dword [0x51205c], 0
je 0x41ddda
cmp dword [0x511ff8], 0
jne case.0x41dcf7.1285
mov ecx, 0x511bf0
call fcn.00411ff0
mov esi, dword [ebx + 0x50]
push 0x46e1b4
mov edi, dword [esi]
call fcn.0041c3c0
add esp, 4
push eax
push esi
call dword [edi + 0x14]
push dword [ebp - 0x63b4]
lea eax, [ebp - 0x194]
mov ecx, ebx
push 0x471480
push eax
push 0x47148c
push 0x471ff0
push 0x4720bc
call fcn.00420af0
mov dword [0x4984e8], eax
cmp eax, 1
jne 0x41e3a1
push 0x51c2dc
lea eax, [ebp - 0x439c]
push 0x1ffe
push eax
call fcn.0044a958
add esp, 0xc
lea eax, [ebp - 0x439c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
push 0x46d7e0
lea eax, [ebp - 0x439c]
push 0x104
push eax
call fcn.0044a9b2
push 0x46dfc0
lea eax, [ebp - 0x439c]
push 0x104
push eax
call fcn.0044a9b2
mov esi, dword [sym.imp.SHELL32.dll_ShellExecuteA]
lea eax, [ebp - 0x439c]
add esp, 0x18
push 1
push 0
push 0
push eax
push 0x46dd64
push 0
call esi
push str.Started_admin_launch
push dword [0x504e50]
call fcn.00440eb0
push 0x506068
lea eax, [ebp - 0x239c]
push 0x1ffe
push eax
call fcn.0044a958
push 0x4720e4
lea eax, [ebp - 0x239c]
push 0x1ffe
push eax
call fcn.0044a9b2
lea eax, [ebp - 0x639c]
push eax
lea eax, [ebp - 0x239c]
push 0x1ffe
push eax
call fcn.0044a9b2
push str.___SBPathForadminLaunch_
lea eax, [ebp - 0x239c]
push 0x1ffe
push eax
call fcn.0044a9b2
push 0x50c170
lea eax, [ebp - 0x239c]
push 0x1ffe
push eax
call fcn.0044a9b2
add esp, 0x44
lea eax, [ebp - 0x239c]
push 0x46dff8
push 0x1ffe
push eax
call fcn.0044a9b2
lea eax, [ebp - 0x239c]
push eax
push str.admin_launch_cmd__s
push dword [0x504e50]
call fcn.00440eb0
add esp, 0x18
mov dword [0x51d838], 2
lea eax, [ebp - 0x239c]
push 1
push 0
push eax
push 0x51c2dc
push 0x46ecac
push 0
call esi
jmp 0x41e5da
mov dword [0x51d838], 5
jmp 0x41e5da
push edx
push 0x472124
push dword [0x504e50]
mov dword [0x540614], edx
call fcn.00440eb0
add esp, 0xc
jmp case.0x41dcf7.1285
push str.Monitor_process
push dword [0x504e50]
call fcn.00440eb0
add esp, 8
lea eax, [ebp - 0x39c]
push 0x104
push eax
push 0xffffffffffffffff
push dword [0x51d728]
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov ecx, dword [0x51d6e4]
mov edx, 0x46d4a0
mov eax, ecx
mov bl, byte [eax]
mov byte [ebp - 0x639d], bl
cmp bl, byte [edx]
jne 0x41e43c
test bl, bl
je 0x41e438
mov bl, byte [eax + 1]
mov byte [ebp - 0x639d], bl
cmp bl, byte [edx + 1]
jne 0x41e43c
add eax, 2
add edx, 2
test bl, bl
jne 0x41e410
xor eax, eax
jmp 0x41e441
sbb eax, eax
or eax, 1
test eax, eax
je 0x41e479
mov eax, 0x472330
nop word [eax + eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x41e470
test dl, dl
je 0x41e46c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x41e470
add ecx, 2
add eax, 2
test dl, dl
jne 0x41e450
xor eax, eax
jmp 0x41e475
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41e483
mov dword [0x53e6a4], 1
push 0
push 0
push 2
push 8
lea eax, [ebp - 0x39c]
mov ecx, 0x511bf0
push eax
call fcn.004155d0
mov ecx, dword [0x51d6e4]
mov edx, 0x46d4a0
mov eax, ecx
nop dword [eax]
mov bl, byte [eax]
cmp bl, byte [edx]
mov byte [ebp - 0x639d], bl
mov ebx, dword [ebp - 0x63b0]
jne 0x41e4f2
cmp byte [ebp - 0x639d], 0
je 0x41e4ee
mov bl, byte [eax + 1]
cmp bl, byte [edx + 1]
mov byte [ebp - 0x639d], bl
mov ebx, dword [ebp - 0x63b0]
jne 0x41e4f2
add eax, 2
add edx, 2
cmp byte [ebp - 0x639d], 0
jne 0x41e4b0
xor eax, eax
jmp 0x41e4f7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41e538
push 0x472334
push dword [0x504e50]
call fcn.00440eb0
add esp, 8
mov dword [0x51d838], 0x11
mov ecx, ebx
mov dword [0x506050], 1
call fcn.0041c560
mov ecx, 0x511bf0
call fcn.00411b20
jmp case.0x41dcf7.1285
mov edx, 0x472330
mov eax, ecx
nop
mov bl, byte [eax]
cmp bl, byte [edx]
mov byte [ebp - 0x639d], bl
mov ebx, dword [ebp - 0x63b0]
jne 0x41e582
cmp byte [ebp - 0x639d], 0
je 0x41e57e
mov bl, byte [eax + 1]
cmp bl, byte [edx + 1]
mov byte [ebp - 0x639d], bl
mov ebx, dword [ebp - 0x63b0]
jne 0x41e582
add eax, 2
add edx, 2
cmp byte [ebp - 0x639d], 0
jne 0x41e540
xor eax, eax
jmp 0x41e587
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41e5f0
push 0x472348
push dword [0x504e50]
call fcn.00440eb0
mov esi, dword [ebx + 0x50]
push 0x46e1b4
mov edi, dword [esi]
call fcn.0041c3c0
add esp, 0xc
push eax
push esi
call dword [edi + 0x14]
push 0x472360
push 0x4723c4
mov ecx, 0x511bf0
call fcn.00418f80
mov dword [0x51d838], 0x11
mov dword [0x506050], 1
mov ecx, ebx
call fcn.0041c560
mov ecx, 0x511bf0
call fcn.00411b20
jmp case.0x41dcf7.1285
mov eax, 0x4723e0
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x41e615
test dl, dl
je 0x41e611
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x41e615
add ecx, 2
add eax, 2
test dl, dl
jne 0x41e5f5
xor eax, eax
jmp 0x41e61a
sbb eax, eax
or eax, 1
test eax, eax
jne case.0x41dcf7.1285
mov eax, dword [0x51d6e0]
push 0
push 0
push 0
mov ecx, dword [eax]
push 0x51d6d0
push 1
push 0x400
push 0x471d78
push 0
push eax
call dword [ecx + 0x18]
push 0x4723e4
jmp 0x41d7e8
mov ecx, dword [edi + 0x24]
test ecx, ecx
je 0x41e68f
mov eax, dword [ecx]
call dword [eax + 8]
mov ecx, dword [edi + 0x24]
test ecx, ecx
je 0x41e678
mov edx, dword [ecx]
cmp ecx, edi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov dword [edi + 0x24], 0
push 0x28
push edi
call fcn.00444ae6
add esp, 8
mov al, 1
jmp 0x41d7f8
call fcn.00444ed2
call fcn.00445cdf
invalid