Function at 0x10046260
Capabilities:
Link many functions at runtime
Log keystrokes
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xf00
mov eax, dword [0x100dbd3c]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov byte [ebp - 0x208], 0
push 0xff
push 0
lea eax, [ebp - 0x207]
push eax
call fcn.10075a40
add esp, 0xc
mov bh, bh
mov byte [ebp - 0x108], 0
push 0xff
push 0
lea ecx, [ebp - 0x107]
push ecx
call fcn.10075a40
add esp, 0xc
push eax
pop eax
mov dword [ebp - 0x21c], 0
mov ah, ah
mov dword [ebp - 0x218], 0
push ecx
pop ecx
mov dword [ebp - 0x214], 0
test ebx, ebx
mov dword [ebp - 0x20c], 0
mov dl, dl
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [ebp - 0x224], eax
test edx, edx
cmp dword [ebp + 0xc], 0xe85c
jne 0x100463ba
cmp dword [ebp + 0x10], 0x7336
jne 0x100463ba
mov byte [ebp - 0x328], 0
push 0xff
push 0
lea edx, [ebp - 0x327]
push edx
call fcn.10075a40
add esp, 0xc
test edi, edi
mov eax, dword [ebp - 0x224]
push eax
push 2
call fcn.10063290
add esp, 4
push eax
lea ecx, [ebp - 0x328]
push ecx
call fcn.10076985
add esp, 0xc
mov cl, cl
lea edx, [ebp - 0x328]
push edx
push 0
push 0xf001f
call fcn.100441f0
mov dword [ebp - 0x20c], eax
test bl, bl
cmp dword [ebp - 0x20c], 0
jne 0x1004637a
test ch, ch
xor eax, eax
jmp 0x1004a4a5
push 0
push 0
push 0
push 6
mov eax, dword [ebp - 0x20c]
push eax
call fcn.100441a0
mov dword [ebp - 0x214], eax
test eax, 0x7cda
cmp dword [ebp - 0x214], 0
jne 0x100463ba
mov ecx, dword [ebp - 0x20c]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test cl, cl
mov dh, dh
xor eax, eax
jmp 0x1004a4a5
call fcn.1004ecb0
mov dword [ebp - 0x220], eax
mov edi, edi
cmp dword [ebp - 0x220], 0
jbe 0x10046524
cmp dword [ebp - 0x220], 1
jne 0x100463ec
call fcn.10053380
test eax, 0x3d3d
jmp 0x10046512
cmp dword [ebp - 0x220], 2
jne 0x10046401
call fcn.10053220
push ebx
pop ebx
jmp 0x10046512
cmp dword [ebp - 0x220], 3
jne 0x10046416
call fcn.100532d0
test dh, dh
jmp 0x10046512
cmp dword [ebp - 0x220], 4
jne 0x1004642e
call fcn.100597e0
test eax, 0x5a89
jmp 0x10046512
cmp dword [ebp - 0x220], 5
jne 0x10046443
call fcn.10059840
mov dl, dl
jmp 0x10046512
cmp dword [ebp - 0x220], 6
jne 0x10046458
call fcn.10057f70
test ecx, ecx
jmp 0x10046512
cmp dword [ebp - 0x220], 7
jne 0x1004646d
call fcn.10057fd0
mov ebx, ebx
jmp 0x10046512
cmp dword [ebp - 0x220], 8
jne 0x10046481
call fcn.10055780
nop
jmp 0x10046512
cmp dword [ebp - 0x220], 9
jne 0x10046493
call fcn.100598a0
mov edx, edx
jmp 0x10046512
cmp dword [ebp - 0x220], 0xa
jne 0x100464a8
call fcn.10059900
test eax, 0x24f3
jmp 0x10046512
cmp dword [ebp - 0x220], 0xb
jne 0x100464ba
call fcn.10058030
mov edx, edx
jmp 0x10046512
cmp dword [ebp - 0x220], 0xc
jne 0x100464cc
call fcn.10058090
test dl, dl
jmp 0x10046512
cmp dword [ebp - 0x220], 0xd
jne 0x100464de
call fcn.10055d20
test edx, edx
jmp 0x10046512
cmp dword [ebp - 0x220], 0xe
jne 0x100464f0
call fcn.10055dd0
test cl, cl
jmp 0x10046512
cmp dword [ebp - 0x220], 0xf
jne 0x10046502
call fcn.10053440
test edi, edi
jmp 0x10046512
cmp dword [ebp - 0x220], 0x10
jne 0x10046512
call fcn.10053500
test cl, cl
call fcn.1004ecb0
mov dword [ebp - 0x220], eax
test edi, edi
jmp 0x100463c7
test bl, bl
mov edx, dword [0x100c8268]
mov dword [ebp - 0x210], edx
mov ecx, ecx
cmp dword [ebp - 0x210], 0
jne 0x1004657f
cmp dword [0x100c826c], 0
je 0x1004657f
cmp dword [ebp + 0xc], 6
je 0x10046573
cmp dword [ebp + 0xc], 0x1c
je 0x10046573
cmp dword [ebp + 0xc], 0x86
je 0x10046573
cmp dword [ebp + 0xc], 8
je 0x10046573
cmp dword [ebp + 0xc], 0x46
je 0x10046573
cmp dword [ebp + 0xc], 0x47
je 0x10046573
cmp dword [ebp + 0xc], 0x18
jne 0x1004657f
mov dword [ebp - 0x210], 1
mov esi, esi
cmp dword [0x100c8268], 0
jne 0x100465db
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x32c], eax
test eax, eax
mov eax, dword [ebp - 0x32c]
sub eax, dword [0x100f2f4c]
cmp eax, 0xbb8
jb 0x100465db
mov ecx, dword [ebp - 0x32c]
mov dword [0x100f2f4c], ecx
test eax, eax
mov dword [0x100c8270], 0
test bl, bl
push 1
call fcn.1004ed60
add esp, 4
test ah, ah
mov dword [0x100c8270], 1
mov cl, cl
call fcn.10021520
mov bl, bl
cmp dword [ebp + 0xc], 0xe923
jb 0x10046646
cmp dword [ebp + 0xc], 0xe92d
jae 0x10046646
test eax, 0x1940
jmp 0x10046612
call fcn.100465fb
mov dword [ebp - 0x330], eax
cmp dword [ebp - 0x330], 0
je 0x10046641
mov dword [ebp - 0x21c], 1
test eax, 0x169b
mov dword [ebp - 0x218], 1
push edx
pop edx
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe92d
jb 0x100466a4
cmp dword [ebp + 0xc], 0xe932
jae 0x100466a4
push ecx
pop ecx
jmp 0x10046673
call fcn.1004665c
mov dword [ebp - 0x334], eax
cmp dword [ebp - 0x334], 0
je 0x1004669f
mov dword [ebp - 0x21c], 1
mov edi, edi
mov dword [ebp - 0x218], 1
mov ebx, ebx
jmp 0x1004a3e7
cmp dword [ebp - 0x210], 0
jne 0x100466f9
cmp dword [ebp + 0xc], 0xe8c1
jne 0x100466f4
cmp dword [ebp + 0x10], 0x7336
jne 0x100466f4
mov edx, dword [ebp + 0x14]
and edx, 1
mov dword [0x100c8268], edx
test dl, dl
mov eax, dword [ebp + 0x14]
and eax, 0x8000
mov dword [0x100c826c], eax
push ebx
pop ebx
mov dword [ebp - 0x21c], 1
mov bl, bl
mov dword [ebp - 0x218], 1
test eax, eax
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8c1
jne 0x1004674a
cmp dword [ebp + 0x10], 0x7336
jne 0x1004674a
mov ecx, dword [ebp + 0x14]
and ecx, 1
mov dword [0x100c8268], ecx
mov bl, bl
mov edx, dword [ebp + 0x14]
and edx, 0x8000
mov dword [0x100c826c], edx
test eax, 0x5060
mov dword [ebp - 0x21c], 1
mov al, al
mov dword [ebp - 0x218], 1
mov ecx, ecx
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 6
jne 0x1004679f
test esi, esi
push eax
pop eax
push 0x596235d2
call fcn.1004d550
add esp, 4
test eax, eax
je 0x1004679a
cmp dword [0x100f2734], 0
jne 0x1004679a
mov eax, dword [ebp + 0x10]
and eax, 0xffff
mov word [ebp - 0x338], ax
test ebx, ebx
mov ecx, dword [ebp + 0x14]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x1004a4a5
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x1c
jne 0x100467e5
mov ah, ah
push ebx
pop ebx
push 0x596235d2
call fcn.1004d550
add esp, 4
test eax, eax
je 0x100467e0
cmp dword [0x100f2734], 0
jne 0x100467e0
push ebx
pop ebx
mov edx, dword [ebp + 0x14]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x1004a4a5
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x86
jne 0x1004681a
mov dl, dl
push edx
pop edx
push 0x596235d2
call fcn.1004d550
add esp, 4
test eax, eax
je 0x10046815
cmp dword [0x100f2734], 0
jne 0x10046815
mov dh, dh
xor eax, eax
jmp 0x1004a4a5
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 8
jne 0x10046863
mov cl, cl
test eax, 0xc09
push 0x596235d2
call fcn.1004d550
add esp, 4
test eax, eax
je 0x1004685e
cmp dword [0x100f2734], 0
jne 0x1004685e
push edx
pop edx
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x1004a4a5
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x46
jne 0x100468a9
mov edx, edx
mov dl, dl
push 0x596235d2
call fcn.1004d550
add esp, 4
test eax, eax
je 0x100468a4
cmp dword [0x100f2734], 0
jne 0x100468a4
test bl, bl
mov ecx, dword [ebp + 0x14]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x1004a4a5
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x47
jne 0x100468ef
test ebx, ebx
push ecx
pop ecx
push 0x596235d2
call fcn.1004d550
add esp, 4
test eax, eax
je 0x100468ea
cmp dword [0x100f2734], 0
jne 0x100468ea
mov ah, ah
mov edx, dword [ebp + 0x14]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x1004a4a5
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x18
jne 0x1004692f
push 0x596235d2
call fcn.1004d550
add esp, 4
test eax, eax
je 0x1004692a
cmp dword [0x100f2734], 0
jne 0x1004692a
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x1004a4a5
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x215
jne 0x10046963
mov ebx, ebx
mov edx, edx
push 0x7fae1452
call fcn.1004d550
add esp, 4
test eax, eax
je 0x1004695e
cmp dword [0x100f2734], 0
jne 0x1004695e
nop
xor eax, eax
jmp 0x1004a4a5
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x84
jne 0x10046ae6
mov dl, dl
mov ecx, dword [ebp + 0x14]
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x340], edx
test ecx, ecx
mov eax, dword [ebp + 0x14]
shr eax, 0x10
movsx ecx, ax
mov dword [ebp - 0x33c], ecx
test ecx, ecx
mov edi, edi
lea edx, [ebp - 0x360]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
test eax, 0x1318
test bh, bh
mov dword [ebp - 0x350], 0
test edi, edi
mov dword [ebp - 0x34c], 0
mov ebx, ebx
mov ecx, dword [ebp - 0x358]
mov dword [ebp - 0x348], ecx
test esi, esi
mov edx, dword [ebp - 0x354]
mov dword [ebp - 0x344], edx
mov edi, edi
lea eax, [ebp - 0x350]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_ClientToScreen]
mov ah, ah
lea edx, [ebp - 0x348]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_ClientToScreen]
nop
mov ecx, dword [ebp - 0x340]
cmp ecx, dword [ebp - 0x350]
jl 0x10046a42
mov edx, dword [ebp - 0x340]
cmp edx, dword [ebp - 0x348]
jge 0x10046a42
mov eax, dword [ebp - 0x33c]
cmp eax, dword [ebp - 0x34c]
jl 0x10046a42
mov ecx, dword [ebp - 0x33c]
cmp ecx, dword [ebp - 0x344]
jl 0x10046a5d
mov edx, dword [ebp + 0x14]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x1004a4a5
push 0x592629e2
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10046a77
cmp dword [0x100f271c], 0
je 0x10046a91
cmp dword [0x100f2734], 0
jne 0x10046a91
test ecx, ecx
mov eax, dword [0x100f26ec]
mov dword [ebp + 0x14], eax
test eax, 0x68c7
jmp 0x10046aac
movzx ecx, word [ebp - 0x340]
movzx edx, word [ebp - 0x33c]
shl edx, 0x10
or ecx, edx
mov dword [0x100f26ec], ecx
push ecx
pop ecx
push 0x5e1c1dfb
call fcn.1004d550
add esp, 4
test eax, eax
je 0x10046ae1
cmp dword [0x100f2734], 0
jne 0x10046ae1
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x1004a4a5
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xa0
je 0x10046b44
cmp dword [ebp + 0xc], 0xa1
je 0x10046b44
cmp dword [ebp + 0xc], 0xa2
je 0x10046b44
cmp dword [ebp + 0xc], 0xa3
je 0x10046b44
cmp dword [ebp + 0xc], 0xa4
je 0x10046b44
cmp dword [ebp + 0xc], 0xa5
je 0x10046b44
cmp dword [ebp + 0xc], 0xa6
je 0x10046b44
cmp dword [ebp + 0xc], 0xa7
je 0x10046b44
cmp dword [ebp + 0xc], 0xa8
je 0x10046b44
cmp dword [ebp + 0xc], 0xa9
jne 0x10046be1
cmp dword [0x100f26f8], 0
je 0x10046bdc
push 0x592629e2
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10046b6b
cmp dword [0x100f271c], 0
je 0x10046b91
cmp dword [0x100f2734], 0
jne 0x10046b91
mov ecx, dword [ebp + 0x14]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x1004a4a5
mov edx, dword [ebp + 0x14]
mov dword [ebp - 0x36c], edx
mov ch, ch
movsx eax, word [ebp - 0x36c]
mov dword [ebp - 0x368], eax
movsx ecx, word [ebp - 0x36a]
mov dword [ebp - 0x364], ecx
mov bl, bl
cmp dword [0x100f272c], 0
jne 0x10046bdc
movzx edx, word [ebp - 0x368]
movzx eax, word [ebp - 0x364]
shl eax, 0x10
or edx, eax
mov dword [0x100f26ec], edx
mov ecx, ecx
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x200
jne 0x10046cda
cmp dword [0x100f26f8], 0
je 0x10046c90
push 0x592629e2
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10046c15
cmp dword [0x100f271c], 0
je 0x10046c30
cmp dword [0x100f2734], 0
jne 0x10046c30
mov ecx, dword [ebp + 0x10]
and ecx, 0x8000
jne 0x10046c30
xor eax, eax
jmp 0x1004a4a5
mov edx, dword [ebp + 0x14]
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x374], eax
mov ecx, dword [ebp + 0x14]
shr ecx, 0x10
movsx edx, cx
mov dword [ebp - 0x370], edx
test eax, 0x1f4e
lea eax, [ebp - 0x374]
push eax
mov ecx, dword [0x100f26f8]
push ecx
call dword [sym.imp.USER32.dll_ClientToScreen]
mov al, al
cmp dword [0x100f272c], 0
jne 0x10046c90
movzx edx, word [ebp - 0x374]
movzx eax, word [ebp - 0x370]
shl eax, 0x10
or edx, eax
mov dword [0x100f26ec], edx
mov ah, ah
mov ecx, dword [ebp + 0x10]
and ecx, 0x8000
jne 0x10046cb9
push 0
call fcn.10056620
add esp, 4
test eax, eax
jne 0x10046cb9
cmp dword [0x100f272c], 0
jne 0x10046cb9
xor eax, eax
jmp 0x1004a4a5
mov edx, dword [ebp + 0x10]
and edx, 0xffff7fff
mov dword [ebp + 0x10], edx
mov al, al
mov eax, dword [ebp + 0xc]
push eax
call fcn.10045e90
add esp, 4
mov bl, bl
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x201
jne 0x10046e13
mov ah, ah
cmp dword [0x100f26f8], 0
je 0x10046dca
push 0x5e1c1dfb
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10046d10
cmp dword [0x100f271c], 0
je 0x10046d2b
cmp dword [0x100f2734], 0
jne 0x10046d2b
mov ecx, dword [ebp + 0x10]
and ecx, 0x8000
jne 0x10046d2b
xor eax, eax
jmp 0x1004a4a5
push 0x592629e2
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10046d45
cmp dword [0x100f271c], 0
je 0x10046db1
cmp dword [0x100f2734], 0
jne 0x10046db1
mov edx, dword [0x100f26ec]
mov dword [ebp - 0x378], edx
test edx, edx
mov eax, dword [ebp - 0x378]
and eax, 0xffff
movsx ecx, ax
mov dword [ebp - 0x380], ecx
mov edx, dword [ebp - 0x378]
shr edx, 0x10
movsx eax, dx
mov dword [ebp - 0x37c], eax
mov ch, ch
lea ecx, [ebp - 0x380]
push ecx
mov edx, dword [0x100f26f8]
push edx
call fcn.1004c530
push edx
pop edx
movzx eax, word [ebp - 0x380]
movzx ecx, word [ebp - 0x37c]
shl ecx, 0x10
or eax, ecx
mov dword [ebp + 0x14], eax
mov bl, bl
mov edx, dword [ebp + 0x10]
and edx, 0x8000
jne 0x10046dca
push 0
push 0
call fcn.10059b20
add esp, 8
test bh, bh
mov eax, dword [ebp + 0x10]
and eax, 0x8000
jne 0x10046df2
push 0
call fcn.10056620
add esp, 4
test eax, eax
jne 0x10046df2
cmp dword [0x100f272c], 0
jne 0x10046df2
xor eax, eax
jmp 0x1004a4a5
mov ecx, dword [ebp + 0x10]
and ecx, 0xffff7fff
mov dword [ebp + 0x10], ecx
push ebx
pop ebx
mov edx, dword [ebp + 0xc]
push edx
call fcn.10045e90
add esp, 4
push ebx
pop ebx
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x202
jne 0x10046f4b
mov edi, edi
cmp dword [0x100f26f8], 0
je 0x10046f02
push 0x5e1c1dfb
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10046e49
cmp dword [0x100f271c], 0
je 0x10046e63
cmp dword [0x100f2734], 0
jne 0x10046e63
mov eax, dword [ebp + 0x10]
and eax, 0x8000
jne 0x10046e63
xor eax, eax
jmp 0x1004a4a5
push 0x592629e2
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10046e7d
cmp dword [0x100f271c], 0
je 0x10046eea
cmp dword [0x100f2734], 0
jne 0x10046eea
mov ecx, dword [0x100f26ec]
mov dword [ebp - 0x384], ecx
push ebx
pop ebx
mov edx, dword [ebp - 0x384]
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x38c], eax
mov ecx, dword [ebp - 0x384]
shr ecx, 0x10
movsx edx, cx
mov dword [ebp - 0x388], edx
test bl, bl
lea eax, [ebp - 0x38c]
push eax
mov ecx, dword [0x100f26f8]
push ecx
call fcn.1004c530
test eax, eax
movzx edx, word [ebp - 0x38c]
movzx eax, word [ebp - 0x388]
shl eax, 0x10
or edx, eax
mov dword [ebp + 0x14], edx
mov edx, edx
mov ecx, dword [ebp + 0x10]
and ecx, 0x8000
jne 0x10046f02
push 0
push 0
call fcn.10059b60
add esp, 8
nop
mov edx, dword [ebp + 0x10]
and edx, 0x8000
jne 0x10046f2b
push 0
call fcn.10056620
add esp, 4
test eax, eax
jne 0x10046f2b
cmp dword [0x100f272c], 0
jne 0x10046f2b
xor eax, eax
jmp 0x1004a4a5
mov eax, dword [ebp + 0x10]
and eax, 0xffff7fff
mov dword [ebp + 0x10], eax
test ecx, ecx
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.10045e90
add esp, 4
mov al, al
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x203
jne 0x10047062
mov esi, esi
cmp dword [0x100f26f8], 0
je 0x10047027
push 0x5e1c1dfb
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10046f81
cmp dword [0x100f271c], 0
je 0x10046f9c
cmp dword [0x100f2734], 0
jne 0x10046f9c
mov edx, dword [ebp + 0x10]
and edx, 0x8000
jne 0x10046f9c
xor eax, eax
jmp 0x1004a4a5
push 0x592629e2
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10046fb6
cmp dword [0x100f271c], 0
je 0x10047027
cmp dword [0x100f2734], 0
jne 0x10047027
mov eax, dword [0x100f26ec]
mov dword [ebp - 0x390], eax
test eax, 0x3f93
mov ecx, dword [ebp - 0x390]
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x398], edx
mov eax, dword [ebp - 0x390]
shr eax, 0x10
movsx ecx, ax
mov dword [ebp - 0x394], ecx
push edx
pop edx
lea edx, [ebp - 0x398]
push edx
mov eax, dword [0x100f26f8]
push eax
call fcn.1004c530
test eax, 0x7e05
movzx ecx, word [ebp - 0x398]
movzx edx, word [ebp - 0x394]
shl edx, 0x10
or ecx, edx
mov dword [ebp + 0x14], ecx
test cl, cl
mov eax, dword [ebp + 0x10]
and eax, 0x8000
jne 0x1004704f
push 0
call fcn.10056620
add esp, 4
test eax, eax
jne 0x1004704f
cmp dword [0x100f272c], 0
jne 0x1004704f
xor eax, eax
jmp 0x1004a4a5
mov ecx, dword [ebp + 0x10]
and ecx, 0xffff7fff
mov dword [ebp + 0x10], ecx
test ecx, ecx
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x204
jne 0x1004719a
test esi, esi
cmp dword [0x100f26f8], 0
je 0x10047150
push 0x5e1c1dfb
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10047098
cmp dword [0x100f271c], 0
je 0x100470b3
cmp dword [0x100f2734], 0
jne 0x100470b3
mov edx, dword [ebp + 0x10]
and edx, 0x8000
jne 0x100470b3
xor eax, eax
jmp 0x1004a4a5
push 0x592629e2
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x100470cd
cmp dword [0x100f271c], 0
je 0x10047138
cmp dword [0x100f2734], 0
jne 0x10047138
mov eax, dword [0x100f26ec]
mov dword [ebp - 0x39c], eax
push eax
pop eax
mov ecx, dword [ebp - 0x39c]
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x3a4], edx
mov eax, dword [ebp - 0x39c]
shr eax, 0x10
movsx ecx, ax
mov dword [ebp - 0x3a0], ecx
mov ecx, ecx
lea edx, [ebp - 0x3a4]
push edx
mov eax, dword [0x100f26f8]
push eax
call fcn.1004c530
test bh, bh
movzx ecx, word [ebp - 0x3a4]
movzx edx, word [ebp - 0x3a0]
shl edx, 0x10
or ecx, edx
mov dword [ebp + 0x14], ecx
test dh, dh
mov eax, dword [ebp + 0x10]
and eax, 0x8000
jne 0x10047150
push 0
push 1
call fcn.10059b20
add esp, 8
mov dl, dl
mov ecx, dword [ebp + 0x10]
and ecx, 0x8000
jne 0x10047179
push 0
call fcn.10056620
add esp, 4
test eax, eax
jne 0x10047179
cmp dword [0x100f272c], 0
jne 0x10047179
xor eax, eax
jmp 0x1004a4a5
mov edx, dword [ebp + 0x10]
and edx, 0xffff7fff
mov dword [ebp + 0x10], edx
mov bh, bh
mov eax, dword [ebp + 0xc]
push eax
call fcn.10045e90
add esp, 4
mov edx, edx
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x205
jne 0x100472d3
mov dh, dh
cmp dword [0x100f26f8], 0
je 0x1004728a
push 0x5e1c1dfb
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x100471d0
cmp dword [0x100f271c], 0
je 0x100471eb
cmp dword [0x100f2734], 0
jne 0x100471eb
mov ecx, dword [ebp + 0x10]
and ecx, 0x8000
jne 0x100471eb
xor eax, eax
jmp 0x1004a4a5
push 0x592629e2
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10047205
cmp dword [0x100f271c], 0
je 0x10047271
cmp dword [0x100f2734], 0
jne 0x10047271
mov edx, dword [0x100f26ec]
mov dword [ebp - 0x3a8], edx
mov edi, edi
mov eax, dword [ebp - 0x3a8]
and eax, 0xffff
movsx ecx, ax
mov dword [ebp - 0x3b0], ecx
mov edx, dword [ebp - 0x3a8]
shr edx, 0x10
movsx eax, dx
mov dword [ebp - 0x3ac], eax
mov ah, ah
lea ecx, [ebp - 0x3b0]
push ecx
mov edx, dword [0x100f26f8]
push edx
call fcn.1004c530
mov dl, dl
movzx eax, word [ebp - 0x3b0]
movzx ecx, word [ebp - 0x3ac]
shl ecx, 0x10
or eax, ecx
mov dword [ebp + 0x14], eax
test dh, dh
mov edx, dword [ebp + 0x10]
and edx, 0x8000
jne 0x1004728a
push 0
push 1
call fcn.10059b60
add esp, 8
test ch, ch
mov eax, dword [ebp + 0x10]
and eax, 0x8000
jne 0x100472b2
push 0
call fcn.10056620
add esp, 4
test eax, eax
jne 0x100472b2
cmp dword [0x100f272c], 0
jne 0x100472b2
xor eax, eax
jmp 0x1004a4a5
mov ecx, dword [ebp + 0x10]
and ecx, 0xffff7fff
mov dword [ebp + 0x10], ecx
test al, al
mov edx, dword [ebp + 0xc]
push edx
call fcn.10045e90
add esp, 4
mov cl, cl
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x207
jne 0x100473fe
mov ecx, ecx
cmp dword [0x100f26f8], 0
je 0x100473c3
push 0x5e1c1dfb
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10047309
cmp dword [0x100f271c], 0
je 0x10047323
cmp dword [0x100f2734], 0
jne 0x10047323
mov eax, dword [ebp + 0x10]
and eax, 0x8000
jne 0x10047323
xor eax, eax
jmp 0x1004a4a5
push 0x592629e2
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x1004733d
cmp dword [0x100f271c], 0
je 0x100473aa
cmp dword [0x100f2734], 0
jne 0x100473aa
mov ecx, dword [0x100f26ec]
mov dword [ebp - 0x3b4], ecx
test dl, dl
mov edx, dword [ebp - 0x3b4]
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x3bc], eax
mov ecx, dword [ebp - 0x3b4]
shr ecx, 0x10
movsx edx, cx
mov dword [ebp - 0x3b8], edx
test edx, edx
lea eax, [ebp - 0x3bc]
push eax
mov ecx, dword [0x100f26f8]
push ecx
call fcn.1004c530
mov edx, edx
movzx edx, word [ebp - 0x3bc]
movzx eax, word [ebp - 0x3b8]
shl eax, 0x10
or edx, eax
mov dword [ebp + 0x14], edx
test edi, edi
mov ecx, dword [ebp + 0x10]
and ecx, 0x8000
jne 0x100473c3
push 0
push 2
call fcn.10059b20
add esp, 8
mov ah, ah
mov edx, dword [ebp + 0x10]
and edx, 0x8000
jne 0x100473ec
push 0
call fcn.10056620
add esp, 4
test eax, eax
jne 0x100473ec
cmp dword [0x100f272c], 0
jne 0x100473ec
xor eax, eax
jmp 0x1004a4a5
mov eax, dword [ebp + 0x10]
and eax, 0xffff7fff
mov dword [ebp + 0x10], eax
test ah, ah
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x208
jne 0x10047529
test al, al
cmp dword [0x100f26f8], 0
je 0x100474ee
push 0x5e1c1dfb
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10047434
cmp dword [0x100f271c], 0
je 0x1004744f
cmp dword [0x100f2734], 0
jne 0x1004744f
mov ecx, dword [ebp + 0x10]
and ecx, 0x8000
jne 0x1004744f
xor eax, eax
jmp 0x1004a4a5
push 0x592629e2
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10047469
cmp dword [0x100f271c], 0
je 0x100474d5
cmp dword [0x100f2734], 0
jne 0x100474d5
mov edx, dword [0x100f26ec]
mov dword [ebp - 0x3c0], edx
mov bl, bl
mov eax, dword [ebp - 0x3c0]
and eax, 0xffff
movsx ecx, ax
mov dword [ebp - 0x3c8], ecx
mov edx, dword [ebp - 0x3c0]
shr edx, 0x10
movsx eax, dx
mov dword [ebp - 0x3c4], eax
test bl, bl
lea ecx, [ebp - 0x3c8]
push ecx
mov edx, dword [0x100f26f8]
push edx
call fcn.1004c530
push eax
pop eax
movzx eax, word [ebp - 0x3c8]
movzx ecx, word [ebp - 0x3c4]
shl ecx, 0x10
or eax, ecx
mov dword [ebp + 0x14], eax
test esi, esi
mov edx, dword [ebp + 0x10]
and edx, 0x8000
jne 0x100474ee
push 0
push 2
call fcn.10059b60
add esp, 8
mov ch, ch
mov eax, dword [ebp + 0x10]
and eax, 0x8000
jne 0x10047516
push 0
call fcn.10056620
add esp, 4
test eax, eax
jne 0x10047516
cmp dword [0x100f272c], 0
jne 0x10047516
xor eax, eax
jmp 0x1004a4a5
mov ecx, dword [ebp + 0x10]
and ecx, 0xffff7fff
mov dword [ebp + 0x10], ecx
test dl, dl
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x20a
jne 0x10047634
nop
cmp dword [0x100f26f8], 0
je 0x100475ea
push 0x5e1c1dfb
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x1004755e
cmp dword [0x100f271c], 0
je 0x10047579
cmp dword [0x100f2734], 0
jne 0x10047579
mov edx, dword [ebp + 0x10]
and edx, 0x8000
jne 0x10047579
xor eax, eax
jmp 0x1004a4a5
push 0x592629e2
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10047593
cmp dword [0x100f271c], 0
je 0x100475ea
cmp dword [0x100f2734], 0
jne 0x100475ea
mov eax, dword [0x100f26ec]
mov dword [ebp - 0x3cc], eax
test al, al
mov ecx, dword [ebp - 0x3cc]
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x3d4], edx
mov eax, dword [ebp - 0x3cc]
shr eax, 0x10
movsx ecx, ax
mov dword [ebp - 0x3d0], ecx
mov ebx, ebx
movzx edx, word [ebp - 0x3d4]
movzx eax, word [ebp - 0x3d0]
shl eax, 0x10
or edx, eax
mov dword [ebp + 0x14], edx
push eax
pop eax
mov ecx, dword [ebp + 0x10]
and ecx, 0x8000
jne 0x10047613
push 0
call fcn.10056620
add esp, 4
test eax, eax
jne 0x10047613
cmp dword [0x100f272c], 0
jne 0x10047613
xor eax, eax
jmp 0x1004a4a5
mov edx, dword [ebp + 0x10]
and edx, 0xffff7fff
mov dword [ebp + 0x10], edx
test al, al
mov eax, dword [ebp + 0xc]
push eax
call fcn.10045e90
add esp, 4
mov eax, eax
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x2a3
jne 0x100476ee
mov al, al
cmp dword [0x100f26f8], 0
je 0x100476e9
push 0x592629e2
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x1004766a
cmp dword [0x100f271c], 0
je 0x100476e9
cmp dword [0x100f2734], 0
jne 0x100476e9
mov dword [ebp + 0xc], 0x2a1
mov ecx, ecx
mov dword [ebp + 0x10], 0
mov ebp, ebp
mov ecx, dword [0x100f26ec]
mov dword [ebp - 0x3d8], ecx
mov ah, ah
mov edx, dword [ebp - 0x3d8]
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x3e0], eax
mov ecx, dword [ebp - 0x3d8]
shr ecx, 0x10
movsx edx, cx
mov dword [ebp - 0x3dc], edx
mov ebp, ebp
lea eax, [ebp - 0x3e0]
push eax
mov ecx, dword [0x100f26f8]
push ecx
call fcn.1004c530
push edx
pop edx
movzx edx, word [ebp - 0x3e0]
movzx eax, word [ebp - 0x3dc]
shl eax, 0x10
or edx, eax
mov dword [ebp + 0x14], edx
mov al, al
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x2a2
jne 0x100477af
mov dl, dl
cmp dword [0x100f26f8], 0
je 0x100477aa
push 0x592629e2
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10047728
cmp dword [0x100f271c], 0
je 0x100477aa
cmp dword [0x100f2734], 0
jne 0x100477aa
mov dword [ebp + 0xc], 0x2a1
mov ecx, ecx
mov dword [ebp + 0x10], 0
test cl, cl
mov ecx, dword [0x100f26ec]
mov dword [ebp - 0x3e4], ecx
test dh, dh
mov edx, dword [ebp - 0x3e4]
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x3ec], eax
mov ecx, dword [ebp - 0x3e4]
shr ecx, 0x10
movsx edx, cx
mov dword [ebp - 0x3e8], edx
test ebx, ebx
lea eax, [ebp - 0x3ec]
push eax
mov ecx, dword [0x100f26f8]
push ecx
call fcn.1004c530
test ecx, ecx
movzx edx, word [ebp - 0x3ec]
movzx eax, word [ebp - 0x3e8]
shl eax, 0x10
or edx, eax
mov dword [ebp + 0x14], edx
test eax, 0x14bd
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x100
jne 0x100477fb
test bl, bl
mov ecx, dword [ebp + 0x14]
and ecx, 0x4000000
jne 0x100477da
push 1
call fcn.10056620
add esp, 4
test eax, eax
jne 0x100477da
xor eax, eax
jmp 0x1004a4a5
mov edx, dword [ebp + 0x14]
and edx, 0xfbffffff
mov dword [ebp + 0x14], edx
test al, al
mov eax, dword [ebp + 0xc]
push eax
call fcn.10045e10
add esp, 4
test esi, esi
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x101
jne 0x10047846
mov al, al
mov ecx, dword [ebp + 0x14]
and ecx, 0x4000000
jne 0x10047826
push 1
call fcn.10056620
add esp, 4
test eax, eax
jne 0x10047826
xor eax, eax
jmp 0x1004a4a5
mov edx, dword [ebp + 0x14]
and edx, 0xfbffffff
mov dword [ebp + 0x14], edx
test bh, bh
mov eax, dword [ebp + 0xc]
push eax
call fcn.10045e10
add esp, 4
nop
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x104
jne 0x10047890
mov ecx, dword [ebp + 0x14]
and ecx, 0x4000000
jne 0x1004786f
push 1
call fcn.10056620
add esp, 4
test eax, eax
jne 0x1004786f
xor eax, eax
jmp 0x1004a4a5
mov edx, dword [ebp + 0x14]
and edx, 0xfbffffff
mov dword [ebp + 0x14], edx
mov edx, edx
mov eax, dword [ebp + 0xc]
push eax
call fcn.10045e10
add esp, 4
mov edi, edi
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x105
jne 0x100478dd
mov ecx, dword [ebp + 0x14]
and ecx, 0x4000000
jne 0x100478b9
push 1
call fcn.10056620
add esp, 4
test eax, eax
jne 0x100478b9
xor eax, eax
jmp 0x1004a4a5
mov edx, dword [ebp + 0x14]
and edx, 0xfbffffff
mov dword [ebp + 0x14], edx
mov ch, ch
mov eax, dword [ebp + 0xc]
push eax
call fcn.10045e10
add esp, 4
test eax, 0x3619
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x106
jne 0x10047919
mov ecx, dword [ebp + 0x14]
and ecx, 0x4000000
jne 0x10047906
push 1
call fcn.10056620
add esp, 4
test eax, eax
jne 0x10047906
xor eax, eax
jmp 0x1004a4a5
mov edx, dword [ebp + 0x14]
and edx, 0xfbffffff
mov dword [ebp + 0x14], edx
test ebx, ebx
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0x102
jne 0x100479c5
mov al, byte [ebp + 0x10]
mov byte [ebp - 0x3ed], al
test ch, ch
movsx ecx, byte [ebp - 0x3ed]
cmp ecx, 0x76
je 0x10047949
movsx edx, byte [ebp - 0x3ed]
cmp edx, 0x56
jne 0x10047962
push 0x11
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
movsx eax, ax
and eax, 0x8000
je 0x10047962
xor eax, eax
jmp 0x1004a4a5
cmp dword [0x100f2f60], 0
je 0x1004798b
mov ecx, dword [ebp + 0x14]
and ecx, 0x4000000
jne 0x1004798b
push 1
call fcn.10056620
add esp, 4
test eax, eax
jne 0x1004798b
xor eax, eax
jmp 0x1004a4a5
push 0x10
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
movsx edx, ax
and edx, 0x8000
je 0x100479b2
mov al, byte [ebp + 0x10]
push eax
call fcn.100560a0
add esp, 4
movsx ecx, al
mov dword [ebp + 0x10], ecx
test al, al
mov edx, dword [ebp + 0x14]
and edx, 0xfbffffff
mov dword [ebp + 0x14], edx
push ebx
pop ebx
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe85c
jne 0x10047d32
cmp dword [ebp + 0x10], 0x7336
jne 0x10047d32
mov ah, ah
test edi, edi
call fcn.10045f30
test eax, 0x1fb7
test eax, 0x4245
mov dword [ebp - 0x3f4], 0
jmp 0x10047a0d
mov eax, dword [ebp - 0x3f4]
add eax, 1
mov dword [ebp - 0x3f4], eax
mov ecx, dword [ebp - 0x214]
mov edx, dword [ebp - 0x3f4]
cmp edx, dword [ecx + 0x1000424]
jae 0x10047a43
mov eax, dword [ebp - 0x3f4]
mov ecx, dword [ebp - 0x214]
lea edx, [ecx + eax*4 + 0x1000024]
push edx
mov ecx, 0x100f2fcc
call fcn.1003c7b0
test al, al
jmp 0x100479fe
push 0x400
push 0
mov eax, dword [ebp - 0x214]
add eax, 0x1000024
push eax
call fcn.10075a40
add esp, 0xc
mov al, al
mov ecx, dword [ebp - 0x214]
push ecx
call fcn.10052ba0
add esp, 4
mov dword [ebp - 0x21c], eax
nop
cmp dword [ebp - 0x21c], 0
je 0x10047a9e
mov edx, dword [ebp - 0x214]
push edx
call fcn.10055650
add esp, 4
test eax, eax
je 0x10047a9e
mov dword [ebp - 0xed8], 1
jmp 0x10047aa8
mov dword [ebp - 0xed8], 0
mov eax, dword [ebp - 0xed8]
mov dword [ebp - 0x21c], eax
push ebx
pop ebx
cmp dword [ebp - 0x21c], 0
je 0x10047ade
mov ecx, dword [ebp - 0x214]
push ecx
call fcn.100526e0
add esp, 4
test eax, eax
je 0x10047ade
mov dword [ebp - 0xedc], 1
jmp 0x10047ae8
mov dword [ebp - 0xedc], 0
mov edx, dword [ebp - 0xedc]
mov dword [ebp - 0x21c], edx
mov ebx, ebx
cmp dword [ebp - 0x21c], 0
je 0x10047b1e
mov eax, dword [ebp - 0x214]
push eax
call fcn.1004d9e0
add esp, 4
test eax, eax
je 0x10047b1e
mov dword [ebp - 0xee0], 1
jmp 0x10047b28
mov dword [ebp - 0xee0], 0
mov ecx, dword [ebp - 0xee0]
mov dword [ebp - 0x21c], ecx
mov edi, edi
cmp dword [ebp - 0x21c], 0
je 0x10047b5e
mov edx, dword [ebp - 0x214]
push edx
call fcn.10056740
add esp, 4
test eax, eax
je 0x10047b5e
mov dword [ebp - 0xee4], 1
jmp 0x10047b68
mov dword [ebp - 0xee4], 0
mov eax, dword [ebp - 0xee4]
mov dword [ebp - 0x21c], eax
mov ebp, ebp
cmp dword [ebp - 0x21c], 0
je 0x10047b9e
mov ecx, dword [ebp - 0x214]
push ecx
call fcn.10052a00
add esp, 4
test eax, eax
je 0x10047b9e
mov dword [ebp - 0xee8], 1
jmp 0x10047ba8
mov dword [ebp - 0xee8], 0
mov edx, dword [ebp - 0xee8]
mov dword [ebp - 0x21c], edx
mov ah, ah
cmp dword [ebp - 0x21c], 0
je 0x10047bde
mov eax, dword [ebp - 0x214]
push eax
call fcn.10055b30
add esp, 4
test eax, eax
je 0x10047bde
mov dword [ebp - 0xeec], 1
jmp 0x10047be8
mov dword [ebp - 0xeec], 0
mov ecx, dword [ebp - 0xeec]
mov dword [ebp - 0x21c], ecx
mov ch, ch
push 0x3f1c98f9
call fcn.1004d550
add esp, 4
test eax, eax
je 0x10047c0f
call dword [sym.imp.USER32.dll_ReleaseCapture]
push ecx
pop ecx
push 0x6f4b12d3
call fcn.1004d550
add esp, 4
test eax, eax
je 0x10047c27
call fcn.100431a0
test dh, dh
push 0x6a5a450a
call fcn.1004d550
add esp, 4
test eax, eax
je 0x10047c44
mov dword [0x100f2744], 1
test edx, edx
push 0x7d877e7a
call fcn.1004d550
add esp, 4
test eax, eax
je 0x10047c61
mov dword [0x100f2f48], 1
test bh, bh
mov esi, dword [ebp - 0x214]
add esi, 0x1000480
mov ecx, 0x18
mov edi, 0x100f2458
rep movsd dword es:[edi], dword [esi]
test cl, cl
mov esi, dword [ebp - 0x214]
add esi, 0x10004e0
mov ecx, 0x18
mov edi, 0x100f2670
rep movsd dword es:[edi], dword [esi]
mov ebx, ebx
call fcn.10045d90
mov eax, eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [0x100f2fac], eax
mov dl, dl
mov dword [0x100c8270], 0
mov dh, dh
cmp dword [ebp - 0x21c], 0
je 0x10047cd8
push 0
call fcn.1004ed60
add esp, 4
test eax, eax
je 0x10047cd8
mov dword [ebp - 0xef0], 1
jmp 0x10047ce2
mov dword [ebp - 0xef0], 0
mov edx, dword [ebp - 0xef0]
mov dword [ebp - 0x21c], edx
test ch, ch
mov dword [0x100c8270], 1
mov bh, bh
mov dword [ebp - 0x218], 1
test ch, ch
push 0x4000
push 0
push 0x100ee458
call fcn.10075a40
add esp, 0xc
test eax, 0x50d8
mov dword [0x100f2714], 0
test esi, esi
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe85d
jne 0x10047d70
cmp dword [ebp + 0x10], 0x7336
jne 0x10047d70
mov ebp, ebp
test dl, dl
mov eax, dword [ebp + 8]
push eax
call fcn.100461b0
add esp, 4
mov dword [ebp - 0x21c], eax
mov dl, dl
mov dword [ebp - 0x218], 1
test eax, 0x554b
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8aa
jne 0x1004862a
mov bl, bl
test eax, eax
mov ecx, dword [ebp + 0x10]
shr ecx, 0x10
movzx edx, cx
mov dword [ebp - 0x400], edx
mov cl, cl
mov eax, dword [ebp + 0x10]
and eax, 0x80
mov dword [ebp - 0x3fc], eax
test eax, 0x76f9
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x404], ecx
mov bl, bl
mov dword [ebp - 0x408], 0
test edi, edi
mov edx, dword [ebp + 0x10]
and edx, 0x40
mov dword [ebp - 0x3f8], edx
mov esi, esi
mov eax, dword [ebp + 0x10]
and eax, 1
je 0x10047dde
mov dword [ebp - 0x408], 1
mov bl, bl
mov ecx, 1
test ecx, ecx
je 0x10048625
cmp dword [ebp - 0x400], 0
jl 0x10047dfd
cmp dword [ebp - 0x400], 2
jle 0x10047e02
jmp 0x10048625
cmp dword [ebp - 0x404], 0
jl 0x10047e17
cmp dword [ebp - 0x404], 0xff
jle 0x10047e1c
jmp 0x10048625
mov dword [ebp - 0x414], 0
test dh, dh
mov edx, dword [ebp - 0x404]
mov dword [ebp - 0x40c], edx
mov ah, ah
mov dword [ebp - 0x410], 0
test edi, edi
push 0
mov eax, dword [ebp - 0x404]
push eax
call dword [sym.imp.USER32.dll_MapVirtualKeyA]
mov dword [ebp - 0x41c], eax
mov esi, esi
mov ecx, dword [ebp - 0x41c]
shl ecx, 0x10
or ecx, 1
mov dword [ebp - 0x410], ecx
mov ebp, ebp
mov edx, dword [ebp - 0x404]
push edx
call fcn.1003aa10
add esp, 4
test eax, eax
je 0x10047e96
mov eax, dword [ebp - 0x410]
or eax, 0x1000000
mov dword [ebp - 0x410], eax
test eax, 0x36cc
cmp dword [ebp - 0x400], 1
jne 0x10047ee1
cmp dword [ebp - 0x408], 0
jne 0x10047eb1
cmp dword [ebp - 0x404], 0x79
jne 0x10047ed3
mov ecx, dword [ebp - 0x410]
or ecx, 0x20000000
mov dword [ebp - 0x410], ecx
push eax
pop eax
mov dword [ebp - 0x414], 0x104
test edi, edi
jmp 0x10047edf
mov dword [ebp - 0x414], 0x100
push ecx
pop ecx
jmp 0x10047f37
cmp dword [ebp - 0x408], 0
jne 0x10047ef3
cmp dword [ebp - 0x404], 0x79
jne 0x10047f18
mov edx, dword [ebp - 0x410]
or edx, 0x20000000
mov dword [ebp - 0x410], edx
test ah, ah
mov dword [ebp - 0x414], 0x105
test eax, 0x786b
jmp 0x10047f24
mov dword [ebp - 0x414], 0x101
mov ebx, ebx
mov eax, dword [ebp - 0x410]
or eax, 0xc0000000
mov dword [ebp - 0x410], eax
mov edi, edi
cmp dword [ebp - 0x400], 1
jne 0x10047f52
mov ecx, dword [ebp - 0x404]
push ecx
call fcn.10059c00
add esp, 4
nop
jmp 0x10047f6b
cmp dword [ebp - 0x400], 2
jne 0x10047f6b
mov edx, dword [ebp - 0x404]
push edx
call fcn.10059c40
add esp, 4
nop
xchg ebx, eax
xchg ebx, eax
cmp dword [ebp - 0x3f8], 0
je 0x10047f85
mov dword [ebp - 0x410], 0
test eax, 0x5886
call fcn.1004b3b0
mov dword [ebp - 0x418], eax
test eax, eax
cmp dword [ebp - 0x418], 0
jne 0x10047fb2
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_SetFocus]
mov esi, esi
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x418], ecx
mov bl, bl
push 0x797a779e
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10047fd1
mov edx, dword [ebp + 8]
mov dword [ebp - 0x418], edx
test eax, 0x47c0
cmp dword [0x100f2734], 0
jne 0x10048002
mov eax, dword [ebp - 0x418]
cmp eax, dword [ebp + 8]
jne 0x10048002
cmp dword [0x100f2728], 0
jne 0x10048002
mov ecx, dword [ebp - 0x410]
or ecx, 0x4000000
mov dword [ebp - 0x410], ecx
test al, al
push 0x18d3d20
call fcn.1004d550
add esp, 4
test eax, eax
je 0x1004846a
cmp dword [0x100f2f50], 0
jne 0x1004823b
mov byte [ebp - 0x448], 0x75
mov byte [ebp - 0x447], 0x73
mov byte [ebp - 0x446], 0x65
mov byte [ebp - 0x445], 0x72
mov byte [ebp - 0x444], 0x33
mov byte [ebp - 0x443], 0x32
mov byte [ebp - 0x442], 0x2e
mov byte [ebp - 0x441], 0x64
mov byte [ebp - 0x440], 0x6c
mov byte [ebp - 0x43f], 0x6c
mov byte [ebp - 0x43e], 0
mov esi, esi
mov byte [ebp - 0x43c], 0x47
mov byte [ebp - 0x43b], 0x65
mov byte [ebp - 0x43a], 0x74
mov byte [ebp - 0x439], 0x52
mov byte [ebp - 0x438], 0x65
mov byte [ebp - 0x437], 0x67
mov byte [ebp - 0x436], 0x69
mov byte [ebp - 0x435], 0x73
mov byte [ebp - 0x434], 0x74
mov byte [ebp - 0x433], 0x65
mov byte [ebp - 0x432], 0x72
mov byte [ebp - 0x431], 0x65
mov byte [ebp - 0x430], 0x64
mov byte [ebp - 0x42f], 0x52
mov byte [ebp - 0x42e], 0x61
mov byte [ebp - 0x42d], 0x77
mov byte [ebp - 0x42c], 0x49
mov byte [ebp - 0x42b], 0x6e
mov byte [ebp - 0x42a], 0x70
mov byte [ebp - 0x429], 0x75
mov byte [ebp - 0x428], 0x74
mov byte [ebp - 0x427], 0x44
mov byte [ebp - 0x426], 0x65
mov byte [ebp - 0x425], 0x76
mov byte [ebp - 0x424], 0x69
mov byte [ebp - 0x423], 0x63
mov byte [ebp - 0x422], 0x65
mov byte [ebp - 0x421], 0x73
mov byte [ebp - 0x420], 0
test eax, 0x1603
mov dword [ebp - 0x44c], 0
test eax, 0x1516
lea edx, [ebp - 0x43c]
push edx
lea eax, [ebp - 0x448]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x44c], eax
mov edx, edx
cmp dword [ebp - 0x44c], 0
je 0x10048224
test eax, 0x3961
mov dword [ebp - 0x4d4], 0xa
push edx
pop edx
push 0x78
push 0
lea ecx, [ebp - 0x4d0]
push ecx
call fcn.10075a40
add esp, 0xc
test edx, edx
push 0xc
lea edx, [ebp - 0x4d4]
push edx
lea eax, [ebp - 0x4d0]
push eax
call dword [ebp - 0x44c]
mov dword [ebp - 0x450], eax
test ch, ch
mov dh, dh
mov dword [ebp - 0x454], 0
jmp 0x100481e3
mov ecx, dword [ebp - 0x454]
add ecx, 1
mov dword [ebp - 0x454], ecx
mov edx, dword [ebp - 0x454]
cmp edx, dword [ebp - 0x450]
jae 0x10048224
push eax
pop eax
mov eax, dword [ebp - 0x454]
imul eax, eax, 0xc
movzx ecx, word [ebp + eax - 0x4ce]
cmp ecx, 6
jne 0x10048222
mov edx, dword [ebp - 0x454]
imul edx, edx, 0xc
mov eax, dword [ebp + edx - 0x4c8]
mov dword [0x100f2f50], eax
mov ebx, ebx
jmp 0x10048224
jmp 0x100481d4
cmp dword [0x100f2f50], 0
jne 0x1004823b
mov ecx, dword [ebp - 0x418]
mov dword [0x100f2f50], ecx
mov ch, ch
cmp dword [0x100f2f5c], 0
jne 0x1004841e
mov byte [ebp - 0x4f8], 0x75
mov byte [ebp - 0x4f7], 0x73
mov byte [ebp - 0x4f6], 0x65
mov byte [ebp - 0x4f5], 0x72
mov byte [ebp - 0x4f4], 0x33
mov byte [ebp - 0x4f3], 0x32
mov byte [ebp - 0x4f2], 0x2e
mov byte [ebp - 0x4f1], 0x64
mov byte [ebp - 0x4f0], 0x6c
mov byte [ebp - 0x4ef], 0x6c
mov byte [ebp - 0x4ee], 0
test eax, 0x528c
mov byte [ebp - 0x4ec], 0x47
mov byte [ebp - 0x4eb], 0x65
mov byte [ebp - 0x4ea], 0x74
mov byte [ebp - 0x4e9], 0x52
mov byte [ebp - 0x4e8], 0x61
mov byte [ebp - 0x4e7], 0x77
mov byte [ebp - 0x4e6], 0x49
mov byte [ebp - 0x4e5], 0x6e
mov byte [ebp - 0x4e4], 0x70
mov byte [ebp - 0x4e3], 0x75
mov byte [ebp - 0x4e2], 0x74
mov byte [ebp - 0x4e1], 0x44
mov byte [ebp - 0x4e0], 0x65
mov byte [ebp - 0x4df], 0x76
mov byte [ebp - 0x4de], 0x69
mov byte [ebp - 0x4dd], 0x63
mov byte [ebp - 0x4dc], 0x65
mov byte [ebp - 0x4db], 0x4c
mov byte [ebp - 0x4da], 0x69
mov byte [ebp - 0x4d9], 0x73
mov byte [ebp - 0x4d8], 0x74
mov byte [ebp - 0x4d7], 0
mov edi, edi
mov dword [ebp - 0x4fc], 0
test ch, ch
lea edx, [ebp - 0x4ec]
push edx
lea eax, [ebp - 0x4f8]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x4fc], eax
test ch, ch
cmp dword [ebp - 0x4fc], 0
je 0x1004841e
test eax, 0x686a
mov dword [ebp - 0x508], 0x64
test cl, cl
push 0x320
push 0
lea ecx, [ebp - 0x828]
push ecx
call fcn.10075a40
add esp, 0xc
test edi, edi
push 8
lea edx, [ebp - 0x508]
push edx
lea eax, [ebp - 0x828]
push eax
call dword [ebp - 0x4fc]
mov dword [ebp - 0x500], eax
mov esi, esi
test bl, bl
mov dword [ebp - 0x504], 0
jmp 0x100483d6
mov ecx, dword [ebp - 0x504]
add ecx, 1
mov dword [ebp - 0x504], ecx
mov edx, dword [ebp - 0x504]
cmp edx, dword [ebp - 0x500]
jae 0x1004841e
mov ch, ch
mov eax, dword [ebp - 0x504]
cmp dword [ebp + eax*8 - 0x824], 1
jne 0x1004841c
mov ecx, dword [ebp - 0x504]
cmp dword [ebp + ecx*8 - 0x828], 0
je 0x1004841c
mov edx, dword [ebp - 0x504]
mov eax, dword [ebp + edx*8 - 0x828]
mov dword [0x100f2f5c], eax
test dl, dl
jmp 0x1004841e
jmp 0x100483c7
cmp dword [ebp - 0x3fc], 0
je 0x10048451
push 0
mov ecx, dword [0x100f273c]
push ecx
push 1
push 0x12345678
push 0
push 0xff
mov edx, dword [0x100f2f50]
push edx
call fcn.1003b5a0
add esp, 0x1c
test dl, dl
jmp 0x1004846a
push 0x12345678
push 0
push 0xff
mov eax, dword [0x100f2f50]
push eax
call fcn.1003b600
test bh, bh
cmp dword [0x100f2f64], 0
je 0x100484e9
mov ecx, dword [0x100f2f6c]
imul ecx, ecx, 0x14
add ecx, 0x100f24b8
mov dword [ebp - 0x82c], ecx
xchg ebx, eax
xchg ebx, eax
xor edx, edx
mov eax, dword [ebp - 0x82c]
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], edx
test ah, ah
mov ecx, dword [ebp - 0x82c]
mov edx, dword [ebp - 0x404]
mov dword [ecx], edx
mov ecx, ecx
mov eax, dword [ebp - 0x82c]
mov ecx, dword [ebp - 0x41c]
mov dword [eax + 4], ecx
test ecx, ecx
mov edx, dword [0x100f2f6c]
add edx, 1
mov dword [0x100f2f6c], edx
mov ch, ch
cmp dword [0x100f2f6c], 0xa
jb 0x100484e9
mov dword [0x100f2f6c], 0
mov esi, esi
cmp dword [0x100c8274], 0
je 0x10048555
cmp dword [ebp - 0x3fc], 0
je 0x1004852d
push 0
mov eax, dword [0x100f273c]
push eax
push 1
mov ecx, dword [ebp - 0x410]
push ecx
mov edx, dword [ebp - 0x40c]
push edx
mov eax, dword [ebp - 0x414]
push eax
mov ecx, dword [ebp - 0x418]
push ecx
call fcn.1003b5a0
add esp, 0x1c
test dl, dl
jmp 0x10048550
mov edx, dword [ebp - 0x410]
push edx
mov eax, dword [ebp - 0x40c]
push eax
mov ecx, dword [ebp - 0x414]
push ecx
mov edx, dword [ebp - 0x418]
push edx
call fcn.1003b600
test ecx, ecx
jmp 0x10048606
mov eax, dword [ebp - 0x410]
and eax, 0xfbffffff
mov dword [ebp - 0x410], eax
mov al, al
mov ecx, dword [ebp - 0x410]
push ecx
mov edx, dword [ebp - 0x40c]
push edx
mov eax, dword [ebp - 0x414]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [0x100f2fb0]
mov ebp, ebp
mov ebx, ebx
xor edx, edx
mov dword [ebp - 0x848], edx
mov dword [ebp - 0x844], edx
mov dword [ebp - 0x840], edx
mov dword [ebp - 0x83c], edx
mov dword [ebp - 0x838], edx
mov dword [ebp - 0x834], edx
mov dword [ebp - 0x830], edx
test eax, 0x5ab2
mov eax, dword [ebp - 0x418]
mov dword [ebp - 0x848], eax
test edx, edx
mov ecx, dword [ebp - 0x414]
mov dword [ebp - 0x844], ecx
mov ebp, ebp
mov edx, dword [ebp - 0x40c]
mov dword [ebp - 0x840], edx
test eax, 0x37e2
mov eax, dword [ebp - 0x410]
mov dword [ebp - 0x83c], eax
push ebx
pop ebx
lea ecx, [ebp - 0x848]
push ecx
call dword [sym.imp.USER32.dll_TranslateMessage]
mov ebx, ebx
mov dword [ebp - 0x21c], 1
mov ebx, ebx
mov dword [ebp - 0x218], 1
mov dh, dh
jmp 0x10048625
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8ab
jne 0x100493d4
test eax, 0x45e1
mov edi, edi
mov edx, dword [ebp + 0x10]
shr edx, 0x10
movzx eax, dx
mov dword [ebp - 0x85c], eax
test bh, bh
mov ecx, dword [ebp + 0x10]
and ecx, 0x80
mov dword [ebp - 0x858], ecx
test ah, ah
mov dword [ebp - 0x854], 0
test edx, edx
mov dword [ebp - 0x850], 0
mov dh, dh
mov dword [ebp - 0x864], 0
push ebx
pop ebx
mov dword [ebp - 0x84c], 0
test dh, dh
mov dword [ebp - 0x860], 0
test eax, 0x7dd7
mov edx, dword [ebp + 0x10]
and edx, 1
je 0x100486b6
mov dword [ebp - 0x864], 1
test eax, 0x7b12
mov eax, dword [ebp + 0x10]
and eax, 2
je 0x100486ca
mov dword [ebp - 0x84c], 1
test dl, dl
mov ecx, dword [ebp + 0x10]
and ecx, 4
je 0x100486e1
mov dword [ebp - 0x860], 1
test eax, 0xb4a
mov edx, dword [ebp + 0x14]
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x854], eax
mov dl, dl
mov ecx, dword [ebp + 0x14]
shr ecx, 0x10
movsx edx, cx
mov dword [ebp - 0x850], edx
mov edx, edx
mov eax, 1
test eax, eax
je 0x100493cf
cmp dword [ebp - 0x85c], 0
jl 0x10048725
cmp dword [ebp - 0x85c], 0xa
jle 0x1004872a
jmp 0x100493cf
mov dword [ebp - 0x870], 0
mov eax, eax
mov dword [ebp - 0x868], 0
push eax
pop eax
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x86c], ecx
test edi, edi
cmp dword [ebp - 0x85c], 1
jne 0x100487b8
cmp dword [ebp - 0x864], 0
je 0x10048773
mov edx, dword [ebp - 0x868]
or edx, 1
mov dword [ebp - 0x868], edx
test eax, 0x2b94
cmp dword [ebp - 0x84c], 0
je 0x1004878d
mov eax, dword [ebp - 0x868]
or eax, 2
mov dword [ebp - 0x868], eax
test al, al
cmp dword [ebp - 0x860], 0
je 0x100487a7
mov ecx, dword [ebp - 0x868]
or ecx, 0x10
mov dword [ebp - 0x868], ecx
push ecx
pop ecx
mov dword [ebp - 0x870], 0x200
test bh, bh
jmp 0x10048a3b
cmp dword [ebp - 0x85c], 2
jne 0x100487de
mov dword [ebp - 0x868], 1
mov bh, bh
mov dword [ebp - 0x870], 0x201
test bl, bl
jmp 0x10048a3b
cmp dword [ebp - 0x85c], 8
jne 0x10048804
mov dword [ebp - 0x868], 1
mov ch, ch
mov dword [ebp - 0x870], 0x203
mov ah, ah
jmp 0x10048a3b
cmp dword [ebp - 0x85c], 3
jne 0x1004881e
mov dword [ebp - 0x870], 0x202
test ecx, ecx
jmp 0x10048a3b
cmp dword [ebp - 0x85c], 4
jne 0x10048844
mov dword [ebp - 0x868], 2
xchg ebx, eax
xchg ebx, eax
mov dword [ebp - 0x870], 0x204
test esi, esi
jmp 0x10048a3b
cmp dword [ebp - 0x85c], 5
jne 0x1004885e
mov dword [ebp - 0x870], 0x205
mov ch, ch
jmp 0x10048a3b
cmp dword [ebp - 0x85c], 6
jne 0x10048887
mov dword [ebp - 0x868], 0x10
test eax, 0x3d59
mov dword [ebp - 0x870], 0x207
mov ah, ah
jmp 0x10048a3b
cmp dword [ebp - 0x85c], 7
jne 0x100488a1
mov dword [ebp - 0x870], 0x208
mov ecx, ecx
jmp 0x10048a3b
cmp dword [ebp - 0x85c], 9
jne 0x10048974
cmp dword [ebp - 0x864], 0
je 0x100488cb
mov edx, dword [ebp - 0x868]
or edx, 1
mov dword [ebp - 0x868], edx
test eax, 0x76f2
cmp dword [ebp - 0x84c], 0
je 0x100488e5
mov eax, dword [ebp - 0x868]
or eax, 2
mov dword [ebp - 0x868], eax
test edx, edx
cmp dword [ebp - 0x860], 0
je 0x100488ff
mov ecx, dword [ebp - 0x868]
or ecx, 0x10
mov dword [ebp - 0x868], ecx
test al, al
movzx edx, word [ebp - 0x868]
or edx, 0x780000
mov dword [ebp - 0x868], edx
test eax, 0x558e
test ecx, ecx
mov eax, dword [ebp - 0x854]
mov dword [ebp - 0x87c], eax
test ah, ah
mov ecx, dword [ebp - 0x850]
mov dword [ebp - 0x878], ecx
test cl, cl
lea edx, [ebp - 0x87c]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_ClientToScreen]
test dh, dh
movzx ecx, word [ebp - 0x87c]
movzx edx, word [ebp - 0x878]
shl edx, 0x10
or ecx, edx
mov dword [ebp - 0x86c], ecx
mov esi, esi
mov dword [ebp - 0x870], 0x20a
mov cl, cl
jmp 0x10048a3b
cmp dword [ebp - 0x85c], 0xa
jne 0x10048a3b
cmp dword [ebp - 0x864], 0
je 0x1004899b
mov eax, dword [ebp - 0x868]
or eax, 1
mov dword [ebp - 0x868], eax
push eax
pop eax
cmp dword [ebp - 0x84c], 0
je 0x100489b5
mov ecx, dword [ebp - 0x868]
or ecx, 2
mov dword [ebp - 0x868], ecx
test ecx, ecx
cmp dword [ebp - 0x860], 0
je 0x100489cf
mov edx, dword [ebp - 0x868]
or edx, 0x10
mov dword [ebp - 0x868], edx
test ecx, ecx
movzx eax, word [ebp - 0x868]
or eax, 0xff880000
mov dword [ebp - 0x868], eax
mov al, al
test ecx, ecx
mov ecx, dword [ebp - 0x854]
mov dword [ebp - 0x884], ecx
test dh, dh
mov edx, dword [ebp - 0x850]
mov dword [ebp - 0x880], edx
push eax
pop eax
lea eax, [ebp - 0x884]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_ClientToScreen]
test ecx, ecx
movzx edx, word [ebp - 0x884]
movzx eax, word [ebp - 0x880]
shl eax, 0x10
or edx, eax
mov dword [ebp - 0x86c], edx
test ecx, ecx
mov dword [ebp - 0x870], 0x20a
mov bl, bl
cmp dword [0x100f2734], 0
jne 0x10048a61
cmp dword [0x100f2728], 0
jne 0x10048a61
mov ecx, dword [ebp - 0x868]
or ecx, 0x8000
mov dword [ebp - 0x868], ecx
test esi, esi
cmp dword [ebp - 0x85c], 1
jne 0x10048b7a
mov dword [ebp - 0x894], 0
mov dword [ebp - 0x890], 0
test ah, ah
mov edx, dword [0x100f26ec]
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x89c], eax
test eax, 0x587b
mov ecx, dword [0x100f26ec]
shr ecx, 0x10
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x898], edx
test dh, dh
lea eax, [ebp - 0x894]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_ClientToScreen]
mov esi, esi
mov edx, dword [ebp - 0x854]
add edx, dword [ebp - 0x894]
movzx eax, dx
mov ecx, dword [ebp - 0x850]
add ecx, dword [ebp - 0x890]
movzx edx, cx
shl edx, 0x10
or eax, edx
mov dword [ebp - 0x88c], eax
mov dh, dh
mov eax, dword [ebp - 0x88c]
mov dword [0x100f26ec], eax
mov esi, esi
mov edi, edi
mov ecx, dword [ebp - 0x854]
add ecx, dword [ebp - 0x894]
sub ecx, dword [ebp - 0x89c]
mov dword [ebp - 0x8a0], ecx
mov ebp, ebp
mov edx, dword [ebp - 0x850]
add edx, dword [ebp - 0x890]
sub edx, dword [ebp - 0x898]
mov dword [ebp - 0x888], edx
push edx
pop edx
cmp dword [ebp - 0x8a0], 0
je 0x10048b57
push 1
mov eax, dword [ebp - 0x8a0]
push eax
push 0x37
call fcn.10059bb0
add esp, 0xc
mov bl, bl
cmp dword [ebp - 0x888], 0
je 0x10048b75
push 1
mov ecx, dword [ebp - 0x888]
push ecx
push 0x38
call fcn.10059bb0
add esp, 0xc
test ah, ah
jmp 0x10048c6a
cmp dword [ebp - 0x85c], 2
je 0x10048b8c
cmp dword [ebp - 0x85c], 8
jne 0x10048b9f
push 1
push 0
call fcn.10059b20
add esp, 8
test bl, bl
jmp 0x10048c6a
cmp dword [ebp - 0x85c], 3
jne 0x10048bbb
push 1
push 0
call fcn.10059b60
add esp, 8
test bl, bl
jmp 0x10048c6a
cmp dword [ebp - 0x85c], 4
jne 0x10048bd7
push 1
push 1
call fcn.10059b20
add esp, 8
test dl, dl
jmp 0x10048c6a
cmp dword [ebp - 0x85c], 5
jne 0x10048bf0
push 1
push 1
call fcn.10059b60
add esp, 8
mov dh, dh
jmp 0x10048c6a
cmp dword [ebp - 0x85c], 6
jne 0x10048c09
push 1
push 2
call fcn.10059b20
add esp, 8
mov al, al
jmp 0x10048c6a
cmp dword [ebp - 0x85c], 7
jne 0x10048c22
push 1
push 2
call fcn.10059b60
add esp, 8
test bh, bh
jmp 0x10048c6a
cmp dword [ebp - 0x85c], 0xa
jne 0x10048c47
push 1
push 4
call fcn.10059b20
add esp, 8
push ebx
pop ebx
push 0xffffffffffffff88
call fcn.100561d0
add esp, 4
mov ah, ah
jmp 0x10048c6a
cmp dword [ebp - 0x85c], 9
jne 0x10048c6a
push 1
push 5
call fcn.10059b20
add esp, 8
push ebx
pop ebx
push 0x78
call fcn.100561d0
add esp, 4
mov cl, cl
call fcn.1004b3b0
mov dword [ebp - 0x874], eax
mov esi, esi
cmp dword [ebp - 0x874], 0
jne 0x10048c97
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.USER32.dll_SetFocus]
test ah, ah
mov eax, dword [ebp + 8]
mov dword [ebp - 0x874], eax
push edx
pop edx
push 0x797a779e
call fcn.1004d550
add esp, 4
test eax, eax
jne 0x10048cb3
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x874], ecx
mov al, al
cmp dword [ebp - 0x858], 0
je 0x10048ce4
push 0
mov edx, dword [0x100f2738]
push edx
push 1
mov eax, dword [0x100f26ec]
push eax
push 0
push 0x84
mov ecx, dword [ebp + 8]
push ecx
call fcn.1003b5a0
add esp, 0x1c
mov cl, cl
jmp 0x10048d00
mov edx, dword [0x100f26ec]
push edx
push 0
push 0x84
mov eax, dword [ebp + 8]
push eax
call fcn.1003b580
add esp, 0x10
test eax, eax
cmp dword [ebp - 0x85c], 1
jne 0x10048d51
cmp dword [ebp - 0x858], 0
je 0x10048d38
push 0
mov ecx, dword [0x100f2738]
push ecx
push 1
push 0x2000001
mov edx, dword [ebp + 8]
push edx
push 0x20
mov eax, dword [ebp + 8]
push eax
call fcn.1003b5a0
add esp, 0x1c
test ch, ch
jmp 0x10048d51
push 0x2000001
mov ecx, dword [ebp + 8]
push ecx
push 0x20
mov edx, dword [ebp + 8]
push edx
call fcn.1003b580
add esp, 0x10
mov dh, dh
test cl, cl
push 0x326cd5b9
call fcn.1004d550
add esp, 4
test eax, eax
je 0x10049210
cmp dword [0x100f2f54], 0
jne 0x10048f87
mov dword [ebp - 0x8d0], 0
test bh, bh
mov byte [ebp - 0x8cc], 0x75
mov byte [ebp - 0x8cb], 0x73
mov byte [ebp - 0x8ca], 0x65
mov byte [ebp - 0x8c9], 0x72
mov byte [ebp - 0x8c8], 0x33
mov byte [ebp - 0x8c7], 0x32
mov byte [ebp - 0x8c6], 0x2e
mov byte [ebp - 0x8c5], 0x64
mov byte [ebp - 0x8c4], 0x6c
mov byte [ebp - 0x8c3], 0x6c
mov byte [ebp - 0x8c2], 0
test cl, cl
mov byte [ebp - 0x8c0], 0x47
mov byte [ebp - 0x8bf], 0x65
mov byte [ebp - 0x8be], 0x74
mov byte [ebp - 0x8bd], 0x52
mov byte [ebp - 0x8bc], 0x65
mov byte [ebp - 0x8bb], 0x67
mov byte [ebp - 0x8ba], 0x69
mov byte [ebp - 0x8b9], 0x73
mov byte [ebp - 0x8b8], 0x74
mov byte [ebp - 0x8b7], 0x65
mov byte [ebp - 0x8b6], 0x72
mov byte [ebp - 0x8b5], 0x65
mov byte [ebp - 0x8b4], 0x64
mov byte [ebp - 0x8b3], 0x52
mov byte [ebp - 0x8b2], 0x61
mov byte [ebp - 0x8b1], 0x77
mov byte [ebp - 0x8b0], 0x49
mov byte [ebp - 0x8af], 0x6e
mov byte [ebp - 0x8ae], 0x70
mov byte [ebp - 0x8ad], 0x75
mov byte [ebp - 0x8ac], 0x74
mov byte [ebp - 0x8ab], 0x44
mov byte [ebp - 0x8aa], 0x65
mov byte [ebp - 0x8a9], 0x76
mov byte [ebp - 0x8a8], 0x69
mov byte [ebp - 0x8a7], 0x63
mov byte [ebp - 0x8a6], 0x65
mov byte [ebp - 0x8a5], 0x73
mov byte [ebp - 0x8a4], 0
push ebx
pop ebx
lea eax, [ebp - 0x8c0]
push eax
lea ecx, [ebp - 0x8cc]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x8d0], eax
test eax, 0x5962
cmp dword [ebp - 0x8d0], 0
je 0x10048f70
mov ch, ch
mov dword [ebp - 0x954], 0xa
mov ebp, ebp
push 0x78
push 0
lea edx, [ebp - 0x950]
push edx
call fcn.10075a40
add esp, 0xc
test edx, edx
push 0xc
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x950]
push ecx
call dword [ebp - 0x8d0]
mov dword [ebp - 0x8d4], eax
mov ecx, ecx
test edi, edi
mov dword [ebp - 0x8d8], 0
jmp 0x10048f2e
mov edx, dword [ebp - 0x8d8]
add edx, 1
mov dword [ebp - 0x8d8], edx
mov eax, dword [ebp - 0x8d8]
cmp eax, dword [ebp - 0x8d4]
jae 0x10048f70
mov dh, dh
mov ecx, dword [ebp - 0x8d8]
imul ecx, ecx, 0xc
movzx edx, word [ebp + ecx - 0x94e]
cmp edx, 2
jne 0x10048f6e
mov eax, dword [ebp - 0x8d8]
imul eax, eax, 0xc
mov ecx, dword [ebp + eax - 0x948]
mov dword [0x100f2f54], ecx
mov ch, ch
jmp 0x10048f70
jmp 0x10048f1f
cmp dword [0x100f2f54], 0
jne 0x10048f87
mov edx, dword [ebp - 0x874]
mov dword [0x100f2f54], edx
test ah, ah
cmp dword [0x100f2f58], 0
jne 0x1004916e
mov byte [ebp - 0x978], 0x75
mov byte [ebp - 0x977], 0x73
mov byte [ebp - 0x976], 0x65
mov byte [ebp - 0x975], 0x72
mov byte [ebp - 0x974], 0x33
mov byte [ebp - 0x973], 0x32
mov byte [ebp - 0x972], 0x2e
mov byte [ebp - 0x971], 0x64
mov byte [ebp - 0x970], 0x6c
mov byte [ebp - 0x96f], 0x6c
mov byte [ebp - 0x96e], 0
mov bl, bl
mov byte [ebp - 0x96c], 0x47
mov byte [ebp - 0x96b], 0x65
mov byte [ebp - 0x96a], 0x74
mov byte [ebp - 0x969], 0x52
mov byte [ebp - 0x968], 0x61
mov byte [ebp - 0x967], 0x77
mov byte [ebp - 0x966], 0x49
mov byte [ebp - 0x965], 0x6e
mov byte [ebp - 0x964], 0x70
mov byte [ebp - 0x963], 0x75
mov byte [ebp - 0x962], 0x74
mov byte [ebp - 0x961], 0x44
mov byte [ebp - 0x960], 0x65
mov byte [ebp - 0x95f], 0x76
mov byte [ebp - 0x95e], 0x69
mov byte [ebp - 0x95d], 0x63
mov byte [ebp - 0x95c], 0x65
mov byte [ebp - 0x95b], 0x4c
mov byte [ebp - 0x95a], 0x69
mov byte [ebp - 0x959], 0x73
mov byte [ebp - 0x958], 0x74
mov byte [ebp - 0x957], 0
test eax, 0x25bd
mov dword [ebp - 0x97c], 0
test ebx, ebx
lea eax, [ebp - 0x96c]
push eax
lea ecx, [ebp - 0x978]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x97c], eax
test bh, bh
cmp dword [ebp - 0x97c], 0
je 0x1004916e
test ah, ah
mov dword [ebp - 0x988], 0x64
test eax, 0x1324
push 0x320
push 0
lea edx, [ebp - 0xca8]
push edx
call fcn.10075a40
add esp, 0xc
mov bh, bh
push 8
lea eax, [ebp - 0x988]
push eax
lea ecx, [ebp - 0xca8]
push ecx
call dword [ebp - 0x97c]
mov dword [ebp - 0x980], eax
test bl, bl
test eax, 0x6e2c
mov dword [ebp - 0x984], 0
jmp 0x10049125
mov edx, dword [ebp - 0x984]
add edx, 1
mov dword [ebp - 0x984], edx
mov eax, dword [ebp - 0x984]
cmp eax, dword [ebp - 0x980]
jae 0x1004916e
test esi, esi
mov ecx, dword [ebp - 0x984]
cmp dword [ebp + ecx*8 - 0xca4], 0
jne 0x1004916c
mov edx, dword [ebp - 0x984]
cmp dword [ebp + edx*8 - 0xca8], 0
je 0x1004916c
mov eax, dword [ebp - 0x984]
mov ecx, dword [ebp + eax*8 - 0xca8]
mov dword [0x100f2f58], ecx
push ecx
pop ecx
jmp 0x1004916e
jmp 0x10049116
cmp dword [ebp - 0x858], 0
je 0x100491d1
push 0
mov edx, dword [0x100f2738]
push edx
push 1
push 0x12345679
push 0
push 0xff
mov eax, dword [0x100f2f54]
push eax
call fcn.1003b5a0
add esp, 0x1c
test esi, esi
cmp dword [ebp - 0x85c], 1
jne 0x100491cf
push 0
mov ecx, dword [0x100f2738]
push ecx
push 1
push 0x12345679
push 0
push 0xff
mov edx, dword [0x100f2f54]
push edx
call fcn.1003b5a0
add esp, 0x1c
xchg ebx, eax
xchg ebx, eax
jmp 0x10049210
push 0x12345679
push 0
push 0xff
mov eax, dword [0x100f2f54]
push eax
call fcn.1003b600
test eax, 0x502e
cmp dword [ebp - 0x85c], 1
jne 0x10049210
push 0x12345679
push 0
push 0xff
mov ecx, dword [0x100f2f54]
push ecx
call fcn.1003b600
mov ebp, ebp
cmp dword [0x100f2f68], 0
je 0x10049311
cmp dword [ebp - 0x870], 0x203
je 0x10049311
cmp dword [ebp - 0x870], 0x207
je 0x10049311
cmp dword [ebp - 0x870], 0x208
je 0x10049311
mov edx, dword [0x100f2f74]
imul edx, edx, 0x18
add edx, 0x100f2580
mov dword [ebp - 0xcac], edx
mov cl, cl
xor eax, eax
mov ecx, dword [ebp - 0xcac]
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
test ch, ch
mov edx, dword [ebp - 0xcac]
mov eax, dword [ebp - 0x854]
mov dword [edx], eax
test dl, dl
mov ecx, dword [ebp - 0xcac]
mov edx, dword [ebp - 0x850]
mov dword [ecx + 4], edx
test eax, 0x3fb
cmp dword [ebp - 0x870], 0x20a
jne 0x100492d8
cmp dword [ebp - 0x85c], 9
jne 0x100492c9
mov eax, dword [ebp - 0xcac]
mov dword [eax + 8], 0x780000
mov ch, ch
jmp 0x100492d8
mov ecx, dword [ebp - 0xcac]
mov dword [ecx + 8], 0xff880000
test dl, dl
mov edx, dword [ebp - 0xcac]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_ClientToScreen]
test bh, bh
mov ecx, dword [0x100f2f74]
add ecx, 1
mov dword [0x100f2f74], ecx
mov dh, dh
cmp dword [0x100f2f74], 0xa
jb 0x10049311
mov dword [0x100f2f74], 0
push ebx
pop ebx
cmp dword [0x100c8278], 0
je 0x10049375
cmp dword [ebp - 0x858], 0
je 0x10049353
push 0
mov edx, dword [0x100f2738]
push edx
push 1
mov eax, dword [ebp - 0x86c]
push eax
mov ecx, dword [ebp - 0x868]
push ecx
mov edx, dword [ebp - 0x870]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.1003b5a0
add esp, 0x1c
mov esi, esi
jmp 0x10049373
mov ecx, dword [ebp - 0x86c]
push ecx
mov edx, dword [ebp - 0x868]
push edx
mov eax, dword [ebp - 0x870]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.1003b600
mov bh, bh
jmp 0x100493b0
mov edx, dword [ebp - 0x86c]
and edx, 0xfbffffff
mov dword [ebp - 0x86c], edx
test eax, 0x36f6
mov eax, dword [ebp - 0x86c]
push eax
mov ecx, dword [ebp - 0x868]
push ecx
mov edx, dword [ebp - 0x870]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [0x100f2fb0]
test eax, 0x7064
mov dword [ebp - 0x21c], 1
mov cl, cl
mov dword [ebp - 0x218], 1
test esi, esi
jmp 0x100493cf
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8ad
jne 0x10049413
cmp dword [ebp + 0x10], 0x7336
jne 0x10049413
test bh, bh
mov dh, dh
mov dword [0x100c8264], 1
test edi, edi
mov dword [ebp - 0x21c], 1
mov esi, esi
mov dword [ebp - 0x218], 1
test cl, cl
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8b0
jne 0x10049485
cmp dword [ebp + 0x10], 0x7336
jne 0x10049485
test ebx, ebx
test eax, eax
mov ecx, dword [ebp + 0x14]
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0xcb4], edx
mov ecx, ecx
mov eax, dword [ebp + 0x14]
shr eax, 0x10
movsx ecx, ax
mov dword [ebp - 0xcb0], ecx
nop
mov edx, dword [ebp - 0xcb0]
push edx
mov eax, dword [ebp - 0xcb4]
push eax
call fcn.100561b0
add esp, 8
test dh, dh
mov dword [ebp - 0x21c], 1
test bh, bh
mov dword [ebp - 0x218], 1
test eax, 0x48c4
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8b2
jne 0x100494ee
cmp dword [ebp + 0x10], 0x7336
jne 0x100494ee
test ebx, ebx
mov eax, eax
mov ecx, dword [ebp + 0x14]
and ecx, 0x7fffffff
mov dword [0x100f2704], ecx
mov cl, cl
mov edx, dword [ebp + 0x14]
and edx, 0x80000000
je 0x100494c5
mov dword [0x100f2700], 1
test bl, bl
jmp 0x100494d1
mov dword [0x100f2700], 0
test bl, bl
mov dword [ebp - 0x21c], 1
push edx
pop edx
mov dword [ebp - 0x218], 1
test cl, cl
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8d6
jne 0x10049530
cmp dword [ebp + 0x10], 0x7336
jne 0x10049530
fild dword [ebp + 0x14]
fdiv qword [0x1009b948]
fstp qword [0x100c8280]
test al, al
mov esi, esi
mov dword [ebp - 0x21c], 1
mov ah, ah
mov dword [ebp - 0x218], 1
mov esi, esi
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8b5
jne 0x100495f0
cmp dword [ebp + 0x10], 0x7336
jne 0x100495f0
test bh, bh
test ecx, ecx
push 0x16cc25d5
call fcn.1004d550
add esp, 4
test eax, eax
je 0x100495d0
call fcn.100563a0
mov dword [ebp - 0xcbc], eax
mov dh, dh
mov eax, dword [ebp - 0xcbc]
push eax
call fcn.10039470
add esp, 4
mov dword [ebp - 0xcb8], eax
push eax
pop eax
mov ecx, dword [ebp + 0x14]
push ecx
mov edx, dword [ebp - 0xcb8]
push edx
call fcn.100391d0
add esp, 8
mov dword [ebp - 0x21c], eax
mov al, al
cmp dword [ebp - 0xcbc], 0
je 0x100495b6
mov eax, dword [ebp - 0xcbc]
push eax
call dword [sym.imp.USER32.dll_DestroyCursor]
mov eax, eax
cmp dword [ebp - 0xcb8], 0
je 0x100495ce
mov ecx, dword [ebp - 0xcb8]
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
push ebx
pop ebx
jmp 0x100495df
mov dword [ebp - 0x21c], 0
test eax, 0x5069
mov dword [ebp - 0x218], 1
mov ah, ah
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8b6
jne 0x10049704
cmp dword [ebp + 0x10], 0x7336
jne 0x10049704
test eax, eax
test bh, bh
push 0x16cc25d5
call fcn.1004d550
add esp, 4
test eax, eax
je 0x100496e7
call fcn.100563a0
mov dword [ebp - 0xcc4], eax
mov cl, cl
test eax, 0x3637
mov dword [ebp - 0xcc8], 0xffff
mov edx, edx
mov dword [ebp - 0xcc0], 0xffff
test dl, dl
cmp dword [ebp - 0xcc4], 0
je 0x100496ca
lea edx, [ebp - 0xcdc]
push edx
mov eax, dword [ebp - 0xcc4]
push eax
call dword [sym.imp.USER32.dll_GetIconInfo]
push edx
pop edx
cmp dword [ebp - 0xccc], 0
je 0x10049684
mov ecx, dword [ebp - 0xccc]
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
push eax
pop eax
cmp dword [ebp - 0xcd0], 0
je 0x1004969f
mov edx, dword [ebp - 0xcd0]
push edx
call dword [sym.imp.GDI32.dll_DeleteObject]
test eax, 0x33ef
mov eax, dword [ebp - 0xcd8]
mov dword [ebp - 0xcc8], eax
mov cl, cl
mov ecx, dword [ebp - 0xcd4]
mov dword [ebp - 0xcc0], ecx
test dh, dh
mov edx, dword [ebp - 0xcc4]
push edx
call dword [sym.imp.USER32.dll_DestroyCursor]
mov ebp, ebp
movzx eax, word [ebp - 0xcc8]
movzx ecx, word [ebp - 0xcc0]
shl ecx, 0x10
or eax, ecx
mov dword [ebp - 0x21c], eax
test edi, edi
jmp 0x100496f3
mov dword [ebp - 0x21c], 0xffffffff
push eax
pop eax
mov dword [ebp - 0x218], 1
test ch, ch
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8b7
jne 0x10049772
cmp dword [ebp + 0x10], 0x7336
jne 0x10049756
cmp dword [0x100f2714], 0x1000
jge 0x10049756
mov edx, dword [0x100f2714]
add edx, 1
mov dword [ebp - 0x21c], edx
mov dl, dl
mov eax, dword [0x100f2714]
mov dword [eax*4 + 0x100ee458], 1
mov ecx, dword [0x100f2714]
add ecx, 1
mov dword [0x100f2714], ecx
mov cl, cl
jmp 0x10049761
mov dword [ebp - 0x21c], 0x1388
nop
mov dword [ebp - 0x218], 1
mov ebx, ebx
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8b8
jne 0x100497be
cmp dword [ebp + 0x10], 0x7336
jne 0x100497be
cmp dword [ebp + 0x14], 0x1000
jg 0x100497a1
cmp dword [ebp + 0x14], 0
jle 0x100497a1
mov edx, dword [ebp + 0x14]
mov dword [edx*4 + 0x100ee454], 0
mov dword [ebp - 0x21c], 1
mov dl, dl
mov dword [ebp - 0x218], 1
test ebx, ebx
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8b9
jne 0x10049906
cmp dword [ebp + 0x10], 0x7336
jne 0x10049906
cmp dword [ebp + 0x14], 0
jne 0x10049807
mov dword [0x100f271c], 0
mov ebp, ebp
mov dword [0x100f2720], 0
mov eax, eax
mov dword [0x100f2f60], 0
mov al, al
jmp 0x100498ea
cmp dword [ebp + 0x14], 1
jne 0x10049836
mov dword [0x100f271c], 1
xchg ebx, eax
xchg ebx, eax
mov dword [0x100f2720], 1
test bh, bh
mov dword [0x100f2f60], 0
mov ecx, ecx
jmp 0x100498ea
cmp dword [ebp + 0x14], 2
jne 0x10049865
mov dword [0x100f271c], 1
test cl, cl
mov dword [0x100f2720], 0
test eax, eax
mov dword [0x100f2f60], 0
push edx
pop edx
jmp 0x100498ea
cmp dword [ebp + 0x14], 3
jne 0x10049891
mov dword [0x100f271c], 0
test ch, ch
mov dword [0x100f2720], 1
mov dl, dl
mov dword [0x100f2f60], 0
push ebx
pop ebx
jmp 0x100498ea
cmp dword [ebp + 0x14], 4
jne 0x100498c0
mov dword [0x100f271c], 1
test ebx, ebx
mov dword [0x100f2720], 1
test eax, 0x5b49
mov dword [0x100f2f60], 1
mov edx, edx
jmp 0x100498ea
cmp dword [ebp + 0x14], 5
jne 0x100498ea
mov dword [0x100f271c], 0
push edx
pop edx
mov dword [0x100f2720], 1
mov eax, eax
mov dword [0x100f2f60], 1
mov eax, eax
mov dword [ebp - 0x21c], 1
nop
mov dword [ebp - 0x218], 1
push ecx
pop ecx
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8c3
jne 0x1004993f
cmp dword [ebp + 0x10], 0x7336
jne 0x1004993f
mov eax, dword [ebp + 0x14]
mov dword [0x100f2724], eax
mov ch, ch
mov dword [ebp - 0x21c], 1
mov cl, cl
mov dword [ebp - 0x218], 1
push eax
pop eax
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8c4
jne 0x10049970
cmp dword [ebp + 0x10], 0x7336
jne 0x10049970
mov ecx, dword [0x100f26ec]
mov dword [ebp - 0x21c], ecx
mov dh, dh
mov dword [ebp - 0x218], 1
test ebx, ebx
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8c5
jne 0x100499aa
cmp dword [ebp + 0x10], 0x7336
jne 0x100499aa
mov edx, dword [ebp + 0x14]
mov dword [0x100c8274], edx
test bl, bl
mov dword [ebp - 0x21c], 1
xchg ebx, eax
xchg ebx, eax
mov dword [ebp - 0x218], 1
test al, al
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8c6
jne 0x100499e6
cmp dword [ebp + 0x10], 0x7336
jne 0x100499e6
mov eax, dword [ebp + 0x14]
mov dword [0x100c8278], eax
test ecx, ecx
mov dword [ebp - 0x21c], 1
test eax, 0x64bf
mov dword [ebp - 0x218], 1
mov esi, esi
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8c0
jne 0x10049a20
cmp dword [ebp + 0x10], 0x7336
jne 0x10049a20
mov ecx, dword [ebp + 0x14]
mov dword [0x100f2728], ecx
mov al, al
mov dword [ebp - 0x21c], 1
mov edx, edx
mov dword [ebp - 0x218], 1
test edx, edx
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8c2
jne 0x1004a087
cmp dword [ebp + 0x10], 0x7336
jne 0x1004a087
cmp dword [ebp + 0x14], 0
je 0x10049d5d
mov byte [ebp - 0xce8], 0x69
mov byte [ebp - 0xce7], 0x6d
mov byte [ebp - 0xce6], 0x6d
mov byte [ebp - 0xce5], 0x33
mov byte [ebp - 0xce4], 0x32
mov byte [ebp - 0xce3], 0x2e
mov byte [ebp - 0xce2], 0x64
mov byte [ebp - 0xce1], 0x6c
mov byte [ebp - 0xce0], 0x6c
mov byte [ebp - 0xcdf], 0
mov ebx, ebx
lea edx, [ebp - 0xce8]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0xcec], eax
push eax
pop eax
cmp dword [ebp - 0xcec], 0
je 0x10049d58
mov byte [ebp - 0xcfc], 0x49
mov byte [ebp - 0xcfb], 0x6d
mov byte [ebp - 0xcfa], 0x6d
mov byte [ebp - 0xcf9], 0x47
mov byte [ebp - 0xcf8], 0x65
mov byte [ebp - 0xcf7], 0x74
mov byte [ebp - 0xcf6], 0x43
mov byte [ebp - 0xcf5], 0x6f
mov byte [ebp - 0xcf4], 0x6e
mov byte [ebp - 0xcf3], 0x74
mov byte [ebp - 0xcf2], 0x65
mov byte [ebp - 0xcf1], 0x78
mov byte [ebp - 0xcf0], 0x74
mov byte [ebp - 0xcef], 0
push ecx
pop ecx
lea eax, [ebp - 0xcfc]
push eax
mov ecx, dword [ebp - 0xcec]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xd30], eax
mov cl, cl
mov byte [ebp - 0xd48], 0x49
mov byte [ebp - 0xd47], 0x6d
mov byte [ebp - 0xd46], 0x6d
mov byte [ebp - 0xd45], 0x47
mov byte [ebp - 0xd44], 0x65
mov byte [ebp - 0xd43], 0x74
mov byte [ebp - 0xd42], 0x4f
mov byte [ebp - 0xd41], 0x70
mov byte [ebp - 0xd40], 0x65
mov byte [ebp - 0xd3f], 0x6e
mov byte [ebp - 0xd3e], 0x53
mov byte [ebp - 0xd3d], 0x74
mov byte [ebp - 0xd3c], 0x61
mov byte [ebp - 0xd3b], 0x74
mov byte [ebp - 0xd3a], 0x75
mov byte [ebp - 0xd39], 0x73
mov byte [ebp - 0xd38], 0
mov ah, ah
lea edx, [ebp - 0xd48]
push edx
mov eax, dword [ebp - 0xcec]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xd2c], eax
xchg ebx, eax
xchg ebx, eax
mov byte [ebp - 0xd28], 0x49
mov byte [ebp - 0xd27], 0x6d
mov byte [ebp - 0xd26], 0x6d
mov byte [ebp - 0xd25], 0x53
mov byte [ebp - 0xd24], 0x65
mov byte [ebp - 0xd23], 0x74
mov byte [ebp - 0xd22], 0x4f
mov byte [ebp - 0xd21], 0x70
mov byte [ebp - 0xd20], 0x65
mov byte [ebp - 0xd1f], 0x6e
mov byte [ebp - 0xd1e], 0x53
mov byte [ebp - 0xd1d], 0x74
mov byte [ebp - 0xd1c], 0x61
mov byte [ebp - 0xd1b], 0x74
mov byte [ebp - 0xd1a], 0x75
mov byte [ebp - 0xd19], 0x73
mov byte [ebp - 0xd18], 0
test edx, edx
lea ecx, [ebp - 0xd28]
push ecx
mov edx, dword [ebp - 0xcec]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xd14], eax
test eax, 0x7f68
mov byte [ebp - 0xd10], 0x49
mov byte [ebp - 0xd0f], 0x6d
mov byte [ebp - 0xd0e], 0x6d
mov byte [ebp - 0xd0d], 0x52
mov byte [ebp - 0xd0c], 0x65
mov byte [ebp - 0xd0b], 0x6c
mov byte [ebp - 0xd0a], 0x65
mov byte [ebp - 0xd09], 0x61
mov byte [ebp - 0xd08], 0x73
mov byte [ebp - 0xd07], 0x65
mov byte [ebp - 0xd06], 0x43
mov byte [ebp - 0xd05], 0x6f
mov byte [ebp - 0xd04], 0x6e
mov byte [ebp - 0xd03], 0x74
mov byte [ebp - 0xd02], 0x65
mov byte [ebp - 0xd01], 0x78
mov byte [ebp - 0xd00], 0x74
mov byte [ebp - 0xcff], 0
test cl, cl
lea eax, [ebp - 0xd10]
push eax
mov ecx, dword [ebp - 0xcec]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xd4c], eax
test eax, 0x69c1
mov edx, dword [0x100f26f8]
push edx
call dword [ebp - 0xd30]
mov dword [ebp - 0xd34], eax
test dh, dh
mov eax, dword [ebp - 0xd34]
push eax
call dword [ebp - 0xd2c]
test eax, eax
jne 0x10049d31
push 1
mov ecx, dword [ebp - 0xd34]
push ecx
call dword [ebp - 0xd14]
mov ch, ch
mov edx, dword [ebp - 0xd34]
push edx
mov eax, dword [0x100f26f8]
push eax
call dword [ebp - 0xd4c]
test eax, 0x6328
mov ecx, dword [ebp - 0xcec]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
test ebx, ebx
jmp 0x1004a06a
mov byte [ebp - 0xd58], 0x69
mov byte [ebp - 0xd57], 0x6d
mov byte [ebp - 0xd56], 0x6d
mov byte [ebp - 0xd55], 0x33
mov byte [ebp - 0xd54], 0x32
mov byte [ebp - 0xd53], 0x2e
mov byte [ebp - 0xd52], 0x64
mov byte [ebp - 0xd51], 0x6c
mov byte [ebp - 0xd50], 0x6c
mov byte [ebp - 0xd4f], 0
test ch, ch
lea edx, [ebp - 0xd58]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0xd5c], eax
mov cl, cl
cmp dword [ebp - 0xd5c], 0
je 0x1004a06a
mov byte [ebp - 0xd6c], 0x49
mov byte [ebp - 0xd6b], 0x6d
mov byte [ebp - 0xd6a], 0x6d
mov byte [ebp - 0xd69], 0x47
mov byte [ebp - 0xd68], 0x65
mov byte [ebp - 0xd67], 0x74
mov byte [ebp - 0xd66], 0x43
mov byte [ebp - 0xd65], 0x6f
mov byte [ebp - 0xd64], 0x6e
mov byte [ebp - 0xd63], 0x74
mov byte [ebp - 0xd62], 0x65
mov byte [ebp - 0xd61], 0x78
mov byte [ebp - 0xd60], 0x74
mov byte [ebp - 0xd5f], 0
test eax, 0x75ff
lea eax, [ebp - 0xd6c]
push eax
mov ecx, dword [ebp - 0xd5c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xda0], eax
mov bl, bl
mov byte [ebp - 0xdb8], 0x49
mov byte [ebp - 0xdb7], 0x6d
mov byte [ebp - 0xdb6], 0x6d
mov byte [ebp - 0xdb5], 0x47
mov byte [ebp - 0xdb4], 0x65
mov byte [ebp - 0xdb3], 0x74
mov byte [ebp - 0xdb2], 0x4f
mov byte [ebp - 0xdb1], 0x70
mov byte [ebp - 0xdb0], 0x65
mov byte [ebp - 0xdaf], 0x6e
mov byte [ebp - 0xdae], 0x53
mov byte [ebp - 0xdad], 0x74
mov byte [ebp - 0xdac], 0x61
mov byte [ebp - 0xdab], 0x74
mov byte [ebp - 0xdaa], 0x75
mov byte [ebp - 0xda9], 0x73
mov byte [ebp - 0xda8], 0
test ebx, ebx
lea edx, [ebp - 0xdb8]
push edx
mov eax, dword [ebp - 0xd5c]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xd9c], eax
mov ebx, ebx
mov byte [ebp - 0xd98], 0x49
mov byte [ebp - 0xd97], 0x6d
mov byte [ebp - 0xd96], 0x6d
mov byte [ebp - 0xd95], 0x53
mov byte [ebp - 0xd94], 0x65
mov byte [ebp - 0xd93], 0x74
mov byte [ebp - 0xd92], 0x4f
mov byte [ebp - 0xd91], 0x70
mov byte [ebp - 0xd90], 0x65
mov byte [ebp - 0xd8f], 0x6e
mov byte [ebp - 0xd8e], 0x53
mov byte [ebp - 0xd8d], 0x74
mov byte [ebp - 0xd8c], 0x61
mov byte [ebp - 0xd8b], 0x74
mov byte [ebp - 0xd8a], 0x75
mov byte [ebp - 0xd89], 0x73
mov byte [ebp - 0xd88], 0
mov ah, ah
lea ecx, [ebp - 0xd98]
push ecx
mov edx, dword [ebp - 0xd5c]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xd84], eax
mov cl, cl
mov byte [ebp - 0xd80], 0x49
mov byte [ebp - 0xd7f], 0x6d
mov byte [ebp - 0xd7e], 0x6d
mov byte [ebp - 0xd7d], 0x52
mov byte [ebp - 0xd7c], 0x65
mov byte [ebp - 0xd7b], 0x6c
mov byte [ebp - 0xd7a], 0x65
mov byte [ebp - 0xd79], 0x61
mov byte [ebp - 0xd78], 0x73
mov byte [ebp - 0xd77], 0x65
mov byte [ebp - 0xd76], 0x43
mov byte [ebp - 0xd75], 0x6f
mov byte [ebp - 0xd74], 0x6e
mov byte [ebp - 0xd73], 0x74
mov byte [ebp - 0xd72], 0x65
mov byte [ebp - 0xd71], 0x78
mov byte [ebp - 0xd70], 0x74
mov byte [ebp - 0xd6f], 0
nop
lea eax, [ebp - 0xd80]
push eax
mov ecx, dword [ebp - 0xd5c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xdbc], eax
test bh, bh
mov edx, dword [0x100f26f8]
push edx
call dword [ebp - 0xda0]
mov dword [ebp - 0xda4], eax
test cl, cl
mov eax, dword [ebp - 0xda4]
push eax
call dword [ebp - 0xd9c]
test eax, eax
je 0x1004a046
push 0
mov ecx, dword [ebp - 0xda4]
push ecx
call dword [ebp - 0xd84]
test ecx, ecx
mov edx, dword [ebp - 0xda4]
push edx
mov eax, dword [0x100f26f8]
push eax
call dword [ebp - 0xdbc]
test bl, bl
mov ecx, dword [ebp - 0xd5c]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
test dh, dh
mov dword [ebp - 0x21c], 1
mov bl, bl
mov dword [ebp - 0x218], 1
mov dh, dh
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8ba
jne 0x1004a0c1
cmp dword [ebp + 0x10], 0x7336
jne 0x1004a0c1
mov edx, dword [ebp + 0x14]
mov dword [0x100f272c], edx
test ah, ah
mov dword [ebp - 0x21c], 1
test dh, dh
mov dword [ebp - 0x218], 1
test bl, bl
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8bb
jne 0x1004a0fd
cmp dword [ebp + 0x10], 0x7336
jne 0x1004a0fd
mov eax, dword [ebp + 0x14]
mov dword [0x100f2730], eax
push eax
pop eax
mov dword [ebp - 0x21c], 1
test eax, 0x2895
mov dword [ebp - 0x218], 1
mov ch, ch
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8b3
jne 0x1004a12c
cmp dword [ebp + 0x10], 0x7336
jne 0x1004a12c
mov dword [ebp - 0x21c], 1
mov ebp, ebp
mov dword [ebp - 0x218], 1
test dh, dh
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8b4
jne 0x1004a15b
cmp dword [ebp + 0x10], 0x7336
jne 0x1004a15b
mov dword [ebp - 0x21c], 1
mov bl, bl
mov dword [ebp - 0x218], 1
test edi, edi
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8bc
jne 0x1004a1a3
cmp dword [ebp + 0x10], 0
je 0x1004a175
mov ecx, dword [ebp + 0x10]
mov dword [0x100f273c], ecx
mov cl, cl
cmp dword [ebp + 0x14], 0
je 0x1004a186
mov edx, dword [ebp + 0x14]
mov dword [0x100f2738], edx
test dl, dl
mov dword [ebp - 0x21c], 1
test dl, dl
mov dword [ebp - 0x218], 1
mov edx, edx
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8bd
jne 0x1004a317
cmp dword [ebp + 0x10], 0x7336
jne 0x1004a317
cmp dword [ebp + 0x14], 0
je 0x1004a2eb
mov byte [0x100f2748], 0
test al, al
mov byte [ebp - 0xec0], 0
push 0xff
push 0
lea eax, [ebp - 0xebf]
push eax
call fcn.10075a40
add esp, 0xc
test ecx, ecx
mov ecx, dword [ebp - 0x224]
push ecx
push 3
call fcn.10063290
add esp, 4
push eax
lea edx, [ebp - 0xec0]
push edx
call fcn.10076985
add esp, 0xc
mov ch, ch
lea eax, [ebp - 0xec0]
push eax
push 0
push 0xf001f
call fcn.100441f0
mov dword [ebp - 0xdc0], eax
mov edx, edx
cmp dword [ebp - 0xdc0], 0
je 0x1004a2dd
push 0
push 0
push 0
push 6
mov ecx, dword [ebp - 0xdc0]
push ecx
call fcn.100441a0
mov dword [ebp - 0xec4], eax
test eax, 0x569b
mov edx, dword [ebp - 0xec4]
mov dword [ebp - 0xef4], edx
mov dword [ebp - 0xef8], 0x100f2748
mov eax, dword [ebp - 0xef8]
mov dword [ebp - 0xefc], eax
mov ecx, dword [ebp - 0xef4]
mov dl, byte [ecx]
mov byte [ebp - 0xefd], dl
mov eax, dword [ebp - 0xef8]
mov cl, byte [ebp - 0xefd]
mov byte [eax], cl
mov edx, dword [ebp - 0xef4]
add edx, 1
mov dword [ebp - 0xef4], edx
mov eax, dword [ebp - 0xef8]
add eax, 1
mov dword [ebp - 0xef8], eax
cmp byte [ebp - 0xefd], 0
jne 0x1004a27b
test bl, bl
mov ecx, dword [ebp - 0xec4]
push ecx
call fcn.100441d0
mov eax, eax
mov edx, dword [ebp - 0xdc0]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, edx
mov dword [0x100f2740], 1
mov ebx, ebx
jmp 0x1004a2fa
mov dword [0x100f2740], 0
test eax, 0x22c2
mov dword [ebp - 0x21c], 1
test esi, esi
mov dword [ebp - 0x218], 1
test ah, ah
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8be
jne 0x1004a366
cmp dword [ebp + 0x10], 0x7336
jne 0x1004a366
cmp dword [ebp + 0x14], 0
je 0x1004a33d
mov dword [0x100c8270], 1
push ebx
pop ebx
jmp 0x1004a349
mov dword [0x100c8270], 0
test bl, bl
mov dword [ebp - 0x21c], 1
test dl, dl
mov dword [ebp - 0x218], 1
mov dl, dl
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8c7
jne 0x1004a393
cmp dword [ebp + 0x10], 0x7336
jne 0x1004a393
mov eax, dword [0x100f2708]
mov dword [ebp - 0x21c], eax
test al, al
mov dword [ebp - 0x218], 1
mov cl, cl
jmp 0x1004a3e7
cmp dword [ebp + 0xc], 0xe8bf
jne 0x1004a3e7
cmp dword [ebp + 0x10], 0x7336
jne 0x1004a3e7
mov dword [0x100c8270], 0
test al, al
push 1
call fcn.1004ed60
add esp, 4
push edx
pop edx
mov dword [0x100c8270], 1
test bl, bl
mov dword [ebp - 0x21c], 1
test eax, 0xb08
mov dword [ebp - 0x218], 1
test eax, 0x532
cmp dword [ebp - 0x214], 0
je 0x1004a410
mov ecx, dword [ebp - 0x214]
push ecx
call fcn.100441d0
mov edx, edx
mov edx, dword [ebp - 0x20c]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, 0x6c8b
cmp dword [ebp - 0x218], 1
jne 0x1004a424
mov eax, dword [ebp - 0x21c]
jmp 0x1004a4a5
cmp dword [0x100f2fb0], 0
je 0x1004a462
cmp dword [ebp + 0x18], 0
jne 0x1004a462
mov ebx, ebx
jmp 0x1004a44f
call fcn.1004a437
mov dword [ebp - 0xec8], eax
mov eax, dword [ebp - 0xec8]
jmp 0x1004a4a5
cmp dword [0x100f2fbc], 0
je 0x1004a4a3
cmp dword [ebp + 0x18], 0
je 0x1004a4a3
push ebx
pop ebx
jmp 0x1004a490
call fcn.1004a475
mov dword [ebp - 0xecc], eax
mov eax, dword [ebp - 0xecc]
jmp 0x1004a4a5
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10074da4
mov esp, ebp
pop ebp
ret 0x14