Function at 0x100bb6a0
Capabilities:
Contain obfuscated stackstrings
Link many functions at runtime
Log keystrokes
Log keystrokes via polling

Disassembly:
sub esp, 0x644
mov eax, dword [0x101b7324]
xor eax, esp
mov dword [esp + 0x640], eax
mov eax, dword [esp + 0x648]
push ebx
mov ebx, dword [esp + 0x658]
push ebp
push esi
xor esi, esi
push edi
mov edi, dword [esp + 0x65c]
xor ebp, ebp
mov dword [esp + 0x20], eax
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], esi
mov dword [esp + 0x38], ebp
mov dword [esp + 0x3c], esi
call dword [sym.imp.KERNEL32.DLL_GetCurrentProcessId]
cmp edi, 0x7e9
mov dword [esp + 0x18], eax
jne 0x100bb7a2
cmp dword [esp + 0x660], 0x1234
jne 0x100bb7a2
push 0xff
lea ecx, [esp + 0x455]
push ebp
push ecx
mov byte [esp + 0x45c], 0
call fcn.10100550
mov edx, dword [esp + 0x24]
add esp, 0xc
push edx
push 2
call fcn.100dafa0
add esp, 4
push eax
lea eax, [esp + 0x458]
push eax
call fcn.10101330
add esp, 0xc
lea ecx, [esp + 0x450]
push ecx
push ebp
push 0xf001f
call fcn.100b0c70
mov esi, eax
test esi, esi
mov dword [esp + 0x3c], esi
je 0x100bb783
push ebp
push ebp
push ebp
push 6
push esi
call fcn.100b0c20
mov ebp, eax
test ebp, ebp
mov dword [esp + 0x38], ebp
jne 0x100bb7a0
push esi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
xor eax, eax
mov ecx, dword [esp + 0x650]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.100ffae6
add esp, 0x644
ret 0x14
xor esi, esi
call fcn.100c2930
cmp eax, esi
jbe 0x100bb88a
nop
cmp eax, 1
jne 0x100bb7bf
call fcn.100c6920
jmp 0x100bb87d
cmp eax, 2
jne 0x100bb7ce
call fcn.100c6800
jmp 0x100bb87d
cmp eax, 3
jne 0x100bb7dd
call fcn.100c6890
jmp 0x100bb87d
cmp eax, 4
jne 0x100bb7ec
call fcn.100cc5e0
jmp 0x100bb87d
cmp eax, 5
jne 0x100bb7fb
call fcn.100cc630
jmp 0x100bb87d
cmp eax, 6
jne 0x100bb807
call fcn.100cb040
jmp 0x100bb87d
cmp eax, 7
jne 0x100bb813
call fcn.100cb090
jmp 0x100bb87d
cmp eax, 8
jne 0x100bb81f
call fcn.100c8810
jmp 0x100bb87d
cmp eax, 9
jne 0x100bb82b
call fcn.100cc680
jmp 0x100bb87d
cmp eax, 0xa
jne 0x100bb837
call fcn.100cc6d0
jmp 0x100bb87d
cmp eax, 0xb
jne 0x100bb843
call fcn.100cb0e0
jmp 0x100bb87d
cmp eax, 0xc
jne 0x100bb84f
call fcn.100cb130
jmp 0x100bb87d
cmp eax, 0xd
jne 0x100bb85b
call fcn.100c8e00
jmp 0x100bb87d
cmp eax, 0xe
jne 0x100bb867
call fcn.100c8e90
jmp 0x100bb87d
cmp eax, 0xf
jne 0x100bb873
call fcn.100c69c0
jmp 0x100bb87d
cmp eax, 0x10
jne 0x100bb87d
call fcn.100c6a70
call fcn.100c2930
cmp eax, esi
ja 0x100bb7b0
mov eax, dword [0x101a3668]
mov esi, eax
test esi, esi
jne 0x100bb8c8
cmp dword [0x101a366c], eax
je 0x100bb8c8
cmp edi, 6
je 0x100bb8c3
cmp edi, 0x1c
je 0x100bb8c3
cmp edi, 0x86
je 0x100bb8c3
cmp edi, 8
je 0x100bb8c3
cmp edi, 0x46
je 0x100bb8c3
cmp edi, 0x47
je 0x100bb8c3
cmp edi, 0x18
jne 0x100bb8c8
mov esi, 1
test eax, eax
jne 0x100bb905
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
mov edx, eax
sub edx, dword [0x102cd294]
cmp edx, 0xbb8
jb 0x100bb905
push 1
mov dword [0x102cd294], eax
mov dword [0x101a3670], 0
call fcn.100c2d50
add esp, 4
mov dword [0x101a3670], 1
call fcn.10002ac0
cmp edi, 0x8b0
jb 0x100bb948
cmp edi, 0x8ba
jae 0x100bb950
mov eax, dword [esp + 0x660]
mov ecx, dword [esp + 0x20]
push ebx
push eax
push ecx
push edi
call fcn.100d7aa0
test eax, eax
je 0x100be75a
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x8ba
jb 0x100bb96e
cmp edi, 0x8bf
jae 0x100bb96e
mov edx, dword [esp + 0x660]
mov eax, dword [esp + 0x20]
push ebx
push edx
push eax
push edi
call fcn.1000bc50
jmp 0x100bb92e
xor ecx, ecx
cmp esi, ecx
jne 0x100bb9b9
cmp edi, 0x84e
jne 0x100be75a
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov eax, 1
mov ecx, ebx
and ecx, eax
and ebx, 0x8000
mov dword [0x101a3668], ecx
mov dword [0x101a366c], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x84e
jne 0x100bb9fa
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov eax, 1
mov edx, ebx
and edx, eax
and ebx, 0x8000
mov dword [0x101a3668], edx
mov dword [0x101a366c], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 6
jne 0x100bba3b
push 0x596235d2
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100be75a
cmp dword [0x102cca7c], 0
jne 0x100be75a
mov eax, dword [esp + 0x660]
mov ecx, dword [esp + 0x20]
push ebx
push eax
push edi
push ecx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x100bb785
cmp edi, 0x1c
jne 0x100bba7c
push 0x596235d2
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100be75a
cmp dword [0x102cca7c], 0
jne 0x100be75a
mov edx, dword [esp + 0x660]
mov eax, dword [esp + 0x20]
push ebx
push edx
push edi
push eax
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x100bb785
cmp edi, 0x86
jne 0x100bbaab
push 0x596235d2
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100be75a
cmp dword [0x102cca7c], 0
jne 0x100be75a
jmp 0x100bb783
cmp edi, 8
jne 0x100bbaec
push 0x596235d2
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100be75a
cmp dword [0x102cca7c], 0
jne 0x100be75a
mov ecx, dword [esp + 0x660]
mov edx, dword [esp + 0x20]
push ebx
push ecx
push edi
push edx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x100bb785
cmp edi, 0x46
jne 0x100bbb2d
push 0x596235d2
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100be75a
cmp dword [0x102cca7c], 0
jne 0x100be75a
mov eax, dword [esp + 0x660]
mov ecx, dword [esp + 0x20]
push ebx
push eax
push edi
push ecx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x100bb785
cmp edi, 0x47
jne 0x100bbb6e
push 0x596235d2
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100be75a
cmp dword [0x102cca7c], 0
jne 0x100be75a
mov edx, dword [esp + 0x660]
mov eax, dword [esp + 0x20]
push ebx
push edx
push edi
push eax
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x100bb785
cmp edi, 0x18
jne 0x100bbbaf
push 0x596235d2
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100be75a
cmp dword [0x102cca7c], 0
jne 0x100be75a
mov ecx, dword [esp + 0x660]
mov edx, dword [esp + 0x20]
push ebx
push ecx
push edi
push edx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x100bb785
cmp edi, 0x215
jne 0x100bbbc1
push 0x7fae1452
jmp 0x100bba89
cmp edi, 0x84
jne 0x100bbced
mov edi, dword [esp + 0x20]
lea ecx, [esp + 0x430]
mov eax, ebx
push ecx
shr eax, 0x10
push edi
movsx esi, bx
movsx ebp, ax
call dword [sym.imp.USER32.dll_GetClientRect]
mov edx, dword [esp + 0x438]
xor eax, eax
lea ecx, [esp + 0x18]
push ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x440]
push edi
mov edi, dword [sym.imp.USER32.dll_ClientToScreen]
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], eax
call edi
mov eax, dword [esp + 0x20]
lea edx, [esp + 0x28]
push edx
push eax
call edi
cmp esi, dword [esp + 0x18]
jl 0x100bbccf
cmp esi, dword [esp + 0x28]
jge 0x100bbccf
cmp ebp, dword [esp + 0x1c]
jl 0x100bbccf
cmp ebp, dword [esp + 0x2c]
jge 0x100bbccf
push 0x592629e2
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bbc66
cmp dword [0x102cca64], eax
je 0x100bbc7e
cmp dword [0x102cca7c], 0
jne 0x100bbc7e
mov ebx, dword [0x102cca34]
mov dword [esp + 0x664], ebx
jmp 0x100bbc8f
movzx ecx, bp
movzx edx, si
shl ecx, 0x10
or ecx, edx
mov dword [0x102cca34], ecx
push 0x5e1c1dfb
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100be75a
cmp dword [0x102cca7c], 0
jne 0x100be75a
mov eax, dword [esp + 0x660]
mov ecx, dword [esp + 0x20]
push ebx
push eax
push 0x84
push ecx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x100bb785
mov edx, dword [esp + 0x660]
mov eax, dword [esp + 0x20]
push ebx
push edx
push 0x84
push eax
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x100bb785
cmp edi, 0xa0
je 0x100be6f3
cmp edi, 0xa1
je 0x100be6f3
cmp edi, 0xa2
je 0x100be6f3
cmp edi, 0xa3
je 0x100be6f3
cmp edi, 0xa4
je 0x100be6f3
cmp edi, 0xa5
je 0x100be6f3
cmp edi, 0xa6
je 0x100be6f3
cmp edi, 0xa7
je 0x100be6f3
cmp edi, 0xa8
je 0x100be6f3
cmp edi, 0xa9
je 0x100be6f3
cmp edi, 0x200
jne 0x100bbe2e
cmp dword [0x102cca40], ecx
mov edi, 0x8000
je 0x100bbdee
push 0x592629e2
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bbd97
cmp dword [0x102cca64], eax
je 0x100bbdad
cmp dword [0x102cca7c], 0
jne 0x100bbdad
test dword [esp + 0x660], edi
je 0x100bb783
movsx ecx, bx
shr ebx, 0x10
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca40]
movsx edx, bx
push eax
push ecx
mov dword [esp + 0x24], edx
call dword [sym.imp.USER32.dll_ClientToScreen]
cmp dword [0x102cca74], 0
jne 0x100bbdee
movzx edx, word [esp + 0x1c]
movzx eax, word [esp + 0x18]
shl edx, 0x10
or edx, eax
mov dword [0x102cca34], edx
test dword [esp + 0x660], edi
jne 0x100bbe11
push 0
call fcn.100c98b0
add esp, 4
test eax, eax
jne 0x100bbe11
cmp dword [0x102cca74], eax
je 0x100bb783
and dword [esp + 0x660], 0xffff7fff
push 0x200
call fcn.100bb280
add esp, 4
jmp 0x100be75a
cmp edi, 0x201
jne 0x100bbf2e
cmp dword [0x102cca40], ecx
mov edi, 0x8000
je 0x100bbeee
push 0x5e1c1dfb
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bbe64
cmp dword [0x102cca64], eax
je 0x100bbe7a
cmp dword [0x102cca7c], 0
jne 0x100bbe7a
test dword [esp + 0x660], edi
je 0x100bb783
push 0x592629e2
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bbe93
cmp dword [0x102cca64], eax
je 0x100bbed9
cmp dword [0x102cca7c], 0
jne 0x100bbed9
mov eax, dword [0x102cca34]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca40]
push eax
push ecx
mov dword [esp + 0x24], edx
call fcn.100c0730
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x664], eax
test dword [esp + 0x660], edi
jne 0x100bbf11
push 0
push 0
call fcn.100ccc30
add esp, 8
test dword [esp + 0x660], edi
jne 0x100bbf11
push 0
call fcn.100c98b0
add esp, 4
test eax, eax
jne 0x100bbf11
cmp dword [0x102cca74], eax
je 0x100bb783
and dword [esp + 0x660], 0xffff7fff
push 0x201
call fcn.100bb280
add esp, 4
jmp 0x100be75a
cmp edi, 0x202
jne 0x100bc02e
cmp dword [0x102cca40], ecx
mov edi, 0x8000
je 0x100bbfee
push 0x5e1c1dfb
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bbf64
cmp dword [0x102cca64], eax
je 0x100bbf7a
cmp dword [0x102cca7c], 0
jne 0x100bbf7a
test dword [esp + 0x660], edi
je 0x100bb783
push 0x592629e2
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bbf93
cmp dword [0x102cca64], eax
je 0x100bbfd9
cmp dword [0x102cca7c], 0
jne 0x100bbfd9
mov eax, dword [0x102cca34]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca40]
push eax
push ecx
mov dword [esp + 0x24], edx
call fcn.100c0730
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x664], eax
test dword [esp + 0x660], edi
jne 0x100bc011
push 0
push 0
call fcn.100ccc60
add esp, 8
test dword [esp + 0x660], edi
jne 0x100bc011
push 0
call fcn.100c98b0
add esp, 4
test eax, eax
jne 0x100bc011
cmp dword [0x102cca74], eax
je 0x100bb783
and dword [esp + 0x660], 0xffff7fff
push 0x202
call fcn.100bb280
add esp, 4
jmp 0x100be75a
cmp edi, 0x203
jne 0x100bc10c
cmp dword [0x102cca40], ecx
mov edi, 0x8000
je 0x100bc0d9
push 0x5e1c1dfb
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bc064
cmp dword [0x102cca64], eax
je 0x100bc07a
cmp dword [0x102cca7c], 0
jne 0x100bc07a
test dword [esp + 0x660], edi
je 0x100bb783
push 0x592629e2
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bc093
cmp dword [0x102cca64], eax
je 0x100bc0d9
cmp dword [0x102cca7c], 0
jne 0x100bc0d9
mov eax, dword [0x102cca34]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca40]
push eax
push ecx
mov dword [esp + 0x24], edx
call fcn.100c0730
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x664], eax
test dword [esp + 0x660], edi
jne 0x100bc0fc
push 0
call fcn.100c98b0
add esp, 4
test eax, eax
jne 0x100bc0fc
cmp dword [0x102cca74], eax
je 0x100bb783
and dword [esp + 0x660], 0xffff7fff
jmp 0x100be75a
cmp edi, 0x204
jne 0x100bc20c
cmp dword [0x102cca40], ecx
mov edi, 0x8000
je 0x100bc1cc
push 0x5e1c1dfb
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bc142
cmp dword [0x102cca64], eax
je 0x100bc158
cmp dword [0x102cca7c], 0
jne 0x100bc158
test dword [esp + 0x660], edi
je 0x100bb783
push 0x592629e2
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bc171
cmp dword [0x102cca64], eax
je 0x100bc1b7
cmp dword [0x102cca7c], 0
jne 0x100bc1b7
mov eax, dword [0x102cca34]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca40]
push eax
push ecx
mov dword [esp + 0x24], edx
call fcn.100c0730
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x664], eax
test dword [esp + 0x660], edi
jne 0x100bc1ef
push 0
push 1
call fcn.100ccc30
add esp, 8
test dword [esp + 0x660], edi
jne 0x100bc1ef
push 0
call fcn.100c98b0
add esp, 4
test eax, eax
jne 0x100bc1ef
cmp dword [0x102cca74], eax
je 0x100bb783
and dword [esp + 0x660], 0xffff7fff
push 0x204
call fcn.100bb280
add esp, 4
jmp 0x100be75a
cmp edi, 0x205
jne 0x100bc30c
cmp dword [0x102cca40], ecx
mov edi, 0x8000
je 0x100bc2cc
push 0x5e1c1dfb
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bc242
cmp dword [0x102cca64], eax
je 0x100bc258
cmp dword [0x102cca7c], 0
jne 0x100bc258
test dword [esp + 0x660], edi
je 0x100bb783
push 0x592629e2
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bc271
cmp dword [0x102cca64], eax
je 0x100bc2b7
cmp dword [0x102cca7c], 0
jne 0x100bc2b7
mov eax, dword [0x102cca34]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca40]
push eax
push ecx
mov dword [esp + 0x24], edx
call fcn.100c0730
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x664], eax
test dword [esp + 0x660], edi
jne 0x100bc2ef
push 0
push 1
call fcn.100ccc60
add esp, 8
test dword [esp + 0x660], edi
jne 0x100bc2ef
push 0
call fcn.100c98b0
add esp, 4
test eax, eax
jne 0x100bc2ef
cmp dword [0x102cca74], eax
je 0x100bb783
and dword [esp + 0x660], 0xffff7fff
push 0x205
call fcn.100bb280
add esp, 4
jmp 0x100be75a
cmp edi, 0x207
jne 0x100bc3d5
cmp dword [0x102cca40], ecx
mov edi, 0x8000
je 0x100bc0d9
push 0x5e1c1dfb
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bc342
cmp dword [0x102cca64], eax
je 0x100bc358
cmp dword [0x102cca7c], 0
jne 0x100bc358
test dword [esp + 0x660], edi
je 0x100bb783
push 0x592629e2
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bc371
cmp dword [0x102cca64], eax
je 0x100bc3b7
cmp dword [0x102cca7c], 0
jne 0x100bc3b7
mov eax, dword [0x102cca34]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca40]
push eax
push ecx
mov dword [esp + 0x24], edx
call fcn.100c0730
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x664], eax
test dword [esp + 0x660], edi
jne 0x100bc0fc
push 0
push 2
call fcn.100ccc30
add esp, 8
jmp 0x100bc0d9
cmp edi, 0x208
jne 0x100bc49e
cmp dword [0x102cca40], ecx
mov edi, 0x8000
je 0x100bc0d9
push 0x5e1c1dfb
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bc40b
cmp dword [0x102cca64], eax
je 0x100bc421
cmp dword [0x102cca7c], 0
jne 0x100bc421
test dword [esp + 0x660], edi
je 0x100bb783
push 0x592629e2
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bc43a
cmp dword [0x102cca64], eax
je 0x100bc480
cmp dword [0x102cca7c], 0
jne 0x100bc480
mov eax, dword [0x102cca34]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca40]
push eax
push ecx
mov dword [esp + 0x24], edx
call fcn.100c0730
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x664], eax
test dword [esp + 0x660], edi
jne 0x100bc0fc
push 0
push 2
call fcn.100ccc60
add esp, 8
jmp 0x100bc0d9
cmp edi, 0x20a
jne 0x100bc568
cmp dword [0x102cca40], ecx
mov edi, 0x8000
je 0x100bc528
push 0x5e1c1dfb
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bc4d0
cmp dword [0x102cca64], eax
je 0x100bc4e6
cmp dword [0x102cca7c], 0
jne 0x100bc4e6
test dword [esp + 0x660], edi
je 0x100bb783
push 0x592629e2
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bc4ff
cmp dword [0x102cca64], eax
je 0x100bc528
cmp dword [0x102cca7c], 0
jne 0x100bc528
mov eax, dword [0x102cca34]
movsx ecx, ax
shr eax, 0x10
movsx eax, ax
movzx eax, ax
movzx ecx, cx
shl eax, 0x10
or eax, ecx
mov dword [esp + 0x664], eax
test dword [esp + 0x660], edi
jne 0x100bc54b
push 0
call fcn.100c98b0
add esp, 4
test eax, eax
jne 0x100bc54b
cmp dword [0x102cca74], eax
je 0x100bb783
and dword [esp + 0x660], 0xffff7fff
push 0x20a
call fcn.100bb280
add esp, 4
jmp 0x100be75a
cmp edi, 0x2a3
jne 0x100bc602
cmp dword [0x102cca40], ecx
je 0x100be75a
push 0x592629e2
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bc59d
cmp dword [0x102cca64], eax
je 0x100be75a
cmp dword [0x102cca7c], 0
jne 0x100be75a
mov eax, dword [0x102cca34]
movsx edx, ax
shr eax, 0x10
lea ecx, [esp + 0x18]
mov dword [esp + 0x18], edx
mov edx, dword [0x102cca40]
movsx eax, ax
push ecx
push edx
mov dword [esp + 0x664], 0x2a1
mov dword [esp + 0x668], 0
mov dword [esp + 0x24], eax
call fcn.100c0730
movzx eax, word [esp + 0x1c]
movzx ecx, word [esp + 0x18]
shl eax, 0x10
or eax, ecx
mov dword [esp + 0x664], eax
jmp 0x100be75a
cmp edi, 0x2a2
jne 0x100bc69c
cmp dword [0x102cca40], ecx
je 0x100be75a
push 0x592629e2
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bc637
cmp dword [0x102cca64], eax
je 0x100be75a
cmp dword [0x102cca7c], 0
jne 0x100be75a
mov eax, dword [0x102cca34]
movsx edx, ax
shr eax, 0x10
lea ecx, [esp + 0x18]
mov dword [esp + 0x18], edx
mov edx, dword [0x102cca40]
movsx eax, ax
push ecx
push edx
mov dword [esp + 0x664], 0x2a1
mov dword [esp + 0x668], 0
mov dword [esp + 0x24], eax
call fcn.100c0730
movzx eax, word [esp + 0x1c]
movzx ecx, word [esp + 0x18]
shl eax, 0x10
or eax, ecx
mov dword [esp + 0x664], eax
jmp 0x100be75a
cmp edi, 0x100
jne 0x100bc6dd
test ebx, 0x4000000
jne 0x100bc6be
push 1
call fcn.100c98b0
add esp, 4
test eax, eax
je 0x100bb783
and ebx, 0xfbffffff
push 0x100
mov dword [esp + 0x668], ebx
call fcn.100bb210
add esp, 4
jmp 0x100be75a
cmp edi, 0x101
jne 0x100bc71e
test ebx, 0x4000000
jne 0x100bc6ff
push 1
call fcn.100c98b0
add esp, 4
test eax, eax
je 0x100bb783
and ebx, 0xfbffffff
push 0x101
mov dword [esp + 0x668], ebx
call fcn.100bb210
add esp, 4
jmp 0x100be75a
cmp edi, 0x104
jne 0x100bc75f
test ebx, 0x4000000
jne 0x100bc740
push 1
call fcn.100c98b0
add esp, 4
test eax, eax
je 0x100bb783
and ebx, 0xfbffffff
push 0x104
mov dword [esp + 0x668], ebx
call fcn.100bb210
add esp, 4
jmp 0x100be75a
cmp edi, 0x105
jne 0x100bc7a0
test ebx, 0x4000000
jne 0x100bc781
push 1
call fcn.100c98b0
add esp, 4
test eax, eax
je 0x100bb783
and ebx, 0xfbffffff
push 0x105
mov dword [esp + 0x668], ebx
call fcn.100bb210
add esp, 4
jmp 0x100be75a
cmp edi, 0x106
jne 0x100bc7d4
test ebx, 0x4000000
jne 0x100bc7c2
push 1
call fcn.100c98b0
add esp, 4
test eax, eax
je 0x100bb783
and ebx, 0xfbffffff
mov dword [esp + 0x664], ebx
jmp 0x100be75a
cmp edi, 0x102
jne 0x100bc85b
mov al, byte [esp + 0x660]
cmp al, 0x76
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
mov edi, 0x8000
je 0x100bc7f6
cmp al, 0x56
jne 0x100bc803
push 0x11
call esi
test di, ax
jne 0x100bb783
cmp dword [0x102cd2a8], 0
je 0x100bc826
test ebx, 0x4000000
jne 0x100bc826
push 1
call fcn.100c98b0
add esp, 4
test eax, eax
je 0x100bb783
push 0x10
call esi
test di, ax
je 0x100bc849
mov edx, dword [esp + 0x660]
push edx
call fcn.100c9100
movsx eax, al
add esp, 4
mov dword [esp + 0x660], eax
and ebx, 0xfbffffff
mov dword [esp + 0x664], ebx
jmp 0x100be75a
cmp edi, 0x7e9
jne 0x100bca01
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
call fcn.100bb380
xor esi, esi
cmp dword [ebp + 0x1000424], esi
jbe 0x100bc8a9
lea edi, [ebp + 0x1000024]
lea ecx, [ecx]
push edi
mov ecx, 0x102cd314
call fcn.10020870
add esi, 1
add edi, 4
cmp esi, dword [ebp + 0x1000424]
jb 0x100bc890
push 0x400
lea ecx, [ebp + 0x1000024]
push 0
push ecx
call fcn.10100550
push ebp
call fcn.100c6070
add esp, 0x10
test eax, eax
je 0x100bc920
push ebp
call fcn.100c8600
add esp, 4
test eax, eax
je 0x100bc920
push ebp
call fcn.100c5be0
add esp, 4
test eax, eax
je 0x100bc920
push ebp
call fcn.100c1930
add esp, 4
test eax, eax
je 0x100bc920
push ebp
call fcn.100c9960
add esp, 4
test eax, eax
je 0x100bc920
push ebp
call fcn.100c5ee0
add esp, 4
test eax, eax
je 0x100bc920
push ebp
call fcn.100c8c20
add esp, 4
test eax, eax
je 0x100bc920
mov ebx, 1
mov ebp, ebx
jmp 0x100bc925
xor ebp, ebp
lea ebx, [ebp + 1]
push 0x3f1c98f9
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100bc93c
call dword [sym.imp.USER32.dll_ReleaseCapture]
push 0x6f4b12d3
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100bc952
call fcn.100af940
push 0x6a5a450a
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100bc969
mov dword [0x102cca8c], ebx
push 0x7d877e7a
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100bc980
mov dword [0x102cd290], ebx
mov eax, dword [esp + 0x38]
lea esi, [eax + 0x1000480]
mov ecx, 8
mov edi, 0x102cc838
rep movsd dword es:[edi], dword [esi]
lea esi, [eax + 0x10004a0]
mov ecx, 8
mov edi, 0x102cca10
rep movsd dword es:[edi], dword [esi]
call fcn.100bb1d0
call dword [sym.imp.KERNEL32.DLL_GetCurrentThreadId]
xor esi, esi
cmp ebp, esi
mov dword [0x102cd2f4], eax
mov dword [0x101a3670], esi
je 0x100bc9d5
push esi
call fcn.100c2d50
add esp, 4
test eax, eax
mov dword [esp + 0x10], ebx
jne 0x100bc9d9
mov dword [esp + 0x10], esi
push 0x4000
push esi
push 0x102c8838
mov dword [0x101a3670], ebx
mov dword [esp + 0x20], ebx
call fcn.10100550
add esp, 0xc
mov dword [0x102cca5c], esi
jmp 0x100be75a
cmp edi, 0x7ea
jne 0x100bca38
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov edx, dword [esp + 0x20]
push edx
call fcn.100bb600
add esp, 4
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
jmp 0x100be75a
cmp edi, 0x837
jne 0x100bd0bc
mov ebx, dword [esp + 0x660]
mov esi, ebx
mov eax, ebx
and eax, 0x80
shr esi, 0x10
xor ebp, ebp
and ebx, 0x40
test byte [esp + 0x660], 1
mov dword [esp + 0x28], eax
je 0x100bca6f
mov ebp, 1
cmp esi, 2
ja 0x100be75a
cmp dword [esp + 0x664], 0
jl 0x100be75a
cmp dword [esp + 0x664], 0xff
jg 0x100be75a
mov eax, dword [esp + 0x664]
push 0
push eax
call dword [sym.imp.USER32.dll_MapVirtualKeyA]
mov ecx, dword [esp + 0x664]
mov edi, eax
shl edi, 0x10
or edi, 1
push ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0x18], edi
call fcn.1004e640
add esp, 4
test eax, eax
je 0x100bcad5
or edi, 0x1000000
mov dword [esp + 0x14], edi
cmp esi, 1
jne 0x100bcb20
test ebp, ebp
jne 0x100bcaff
cmp dword [esp + 0x664], 0x79
je 0x100bcaff
mov edx, dword [esp + 0x664]
push edx
mov dword [esp + 0x14], 0x100
call fcn.100ccce0
jmp 0x100bcb6c
mov edx, dword [esp + 0x664]
or edi, 0x20000000
push edx
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], 0x104
call fcn.100ccce0
jmp 0x100bcb6c
test ebp, ebp
jne 0x100bcb42
cmp dword [esp + 0x664], 0x79
je 0x100bcb42
or edi, 0xc0000000
mov dword [esp + 0x10], 0x101
mov dword [esp + 0x14], edi
jmp 0x100bcb5a
or edi, 0x20000000
or edi, 0xc0000000
mov dword [esp + 0x10], 0x105
mov dword [esp + 0x14], edi
cmp esi, 2
jne 0x100bcb6f
mov eax, dword [esp + 0x664]
push eax
call fcn.100ccd20
add esp, 4
test ebx, ebx
je 0x100bcb79
xor edi, edi
mov dword [esp + 0x14], edi
call fcn.100bfa90
mov ebx, dword [esp + 0x20]
mov esi, eax
test esi, esi
mov dword [esp + 0x24], esi
jne 0x100bcb99
push ebx
call dword [sym.imp.USER32.dll_SetFocus]
mov esi, ebx
mov dword [esp + 0x24], esi
push 0x797a779e
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100bcbb0
mov esi, ebx
mov dword [esp + 0x24], esi
cmp dword [0x102cca7c], 0
jne 0x100bcbd0
cmp esi, ebx
jne 0x100bcbd0
cmp dword [0x102cca70], 0
jne 0x100bcbd0
or edi, 0x4000000
mov dword [esp + 0x14], edi
push 0x18d3d20
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100bcf7d
cmp dword [0x102cd298], 0
mov edi, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov ebp, dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
mov bl, 0x65
jne 0x100bcda4
lea ecx, [esp + 0x430]
push ecx
lea edx, [esp + 0x3dc]
push edx
mov byte [esp + 0x3e0], 0x75
mov byte [esp + 0x3e1], 0x73
mov byte [esp + 0x3e2], bl
mov byte [esp + 0x3e3], 0x72
mov byte [esp + 0x3e4], 0x33
mov byte [esp + 0x3e5], 0x32
mov byte [esp + 0x3e6], 0x2e
mov byte [esp + 0x3e7], 0x64
mov byte [esp + 0x3e8], 0x6c
mov byte [esp + 0x3e9], 0x6c
mov byte [esp + 0x3ea], 0
mov byte [esp + 0x438], 0x47
mov byte [esp + 0x439], bl
mov byte [esp + 0x43a], 0x74
mov byte [esp + 0x43b], 0x52
mov byte [esp + 0x43c], bl
mov byte [esp + 0x43d], 0x67
mov byte [esp + 0x43e], 0x69
mov byte [esp + 0x43f], 0x73
mov byte [esp + 0x440], 0x74
mov byte [esp + 0x441], bl
mov byte [esp + 0x442], 0x72
mov byte [esp + 0x443], bl
mov byte [esp + 0x444], 0x64
mov byte [esp + 0x445], 0x52
mov byte [esp + 0x446], 0x61
mov byte [esp + 0x447], 0x77
mov byte [esp + 0x448], 0x49
mov byte [esp + 0x449], 0x6e
mov byte [esp + 0x44a], 0x70
mov byte [esp + 0x44b], 0x75
mov byte [esp + 0x44c], 0x74
mov byte [esp + 0x44d], 0x44
mov byte [esp + 0x44e], bl
mov byte [esp + 0x44f], 0x76
mov byte [esp + 0x450], 0x69
mov byte [esp + 0x451], 0x63
mov byte [esp + 0x452], bl
mov byte [esp + 0x453], 0x73
mov byte [esp + 0x454], 0
call ebp
push eax
call edi
mov esi, eax
test esi, esi
je 0x100bcda4
push 0x78
lea eax, [esp + 0x44]
push 0
push eax
mov dword [esp + 0x24], 0xa
call fcn.10100550
add esp, 0xc
push 0xc
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x48]
push edx
call esi
xor ecx, ecx
test eax, eax
jbe 0x100bcda4
lea edx, [esp + 0x42]
cmp word [edx], 6
je 0x100bcd97
add ecx, 1
add edx, 0xc
cmp ecx, eax
jb 0x100bcd85
jmp 0x100bcda4
lea eax, [ecx + ecx*2]
mov ecx, dword [esp + eax*4 + 0x48]
mov dword [0x102cd298], ecx
cmp dword [0x102cd2a4], 0
jne 0x100bcf30
lea edx, [esp + 0x3e4]
push edx
lea eax, [esp + 0x400]
push eax
mov byte [esp + 0x404], 0x75
mov byte [esp + 0x405], 0x73
mov byte [esp + 0x406], bl
mov byte [esp + 0x407], 0x72
mov byte [esp + 0x408], 0x33
mov byte [esp + 0x409], 0x32
mov byte [esp + 0x40a], 0x2e
mov byte [esp + 0x40b], 0x64
mov byte [esp + 0x40c], 0x6c
mov byte [esp + 0x40d], 0x6c
mov byte [esp + 0x40e], 0
mov byte [esp + 0x3ec], 0x47
mov byte [esp + 0x3ed], bl
mov byte [esp + 0x3ee], 0x74
mov byte [esp + 0x3ef], 0x52
mov byte [esp + 0x3f0], 0x61
mov byte [esp + 0x3f1], 0x77
mov byte [esp + 0x3f2], 0x49
mov byte [esp + 0x3f3], 0x6e
mov byte [esp + 0x3f4], 0x70
mov byte [esp + 0x3f5], 0x75
mov byte [esp + 0x3f6], 0x74
mov byte [esp + 0x3f7], 0x44
mov byte [esp + 0x3f8], bl
mov byte [esp + 0x3f9], 0x76
mov byte [esp + 0x3fa], 0x69
mov byte [esp + 0x3fb], 0x63
mov byte [esp + 0x3fc], bl
mov byte [esp + 0x3fd], 0x4c
mov byte [esp + 0x3fe], 0x69
mov byte [esp + 0x3ff], 0x73
mov byte [esp + 0x400], 0x74
mov byte [esp + 0x401], 0
call ebp
push eax
call edi
mov esi, eax
test esi, esi
je 0x100bcf30
push 0x320
lea ecx, [esp + 0xbc]
push 0
push ecx
mov dword [esp + 0x40], 0x64
call fcn.10100550
add esp, 0xc
push 8
lea edx, [esp + 0x38]
push edx
lea eax, [esp + 0xc0]
push eax
call esi
xor ecx, ecx
test eax, eax
jbe 0x100bcf30
cmp dword [esp + ecx*8 + 0xbc], 1
jne 0x100bcf1a
cmp dword [esp + ecx*8 + 0xb8], 0
jne 0x100bcf23
add ecx, 1
cmp ecx, eax
jb 0x100bcf06
jmp 0x100bcf30
mov ecx, dword [esp + ecx*8 + 0xb8]
mov dword [0x102cd2a4], ecx
mov eax, dword [0x102cd298]
test eax, eax
je 0x100bcf7d
cmp dword [0x102cd2a4], 0
je 0x100bcf7d
cmp dword [esp + 0x28], 0
je 0x100bcf6b
mov edx, dword [0x102cca84]
push 0
push edx
push 1
push 0x12345678
push 0
push 0xff
push eax
call fcn.100542d0
add esp, 0x1c
jmp 0x100bcf7d
push 0x12345678
push 0
push 0xff
push eax
call fcn.10054350
cmp dword [0x102cd2ac], 0
mov esi, dword [esp + 0x664]
je 0x100bcfc9
mov edx, dword [0x102cd2b4]
xor ecx, ecx
lea eax, [edx + edx*4]
lea eax, [eax*4 + 0x102cc858]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x30]
add edx, 1
cmp edx, 0xa
mov dword [eax], esi
mov dword [eax + 4], ecx
mov dword [0x102cd2b4], edx
jb 0x100bcfc9
mov dword [0x102cd2b4], 0
cmp dword [0x101a3674], 0
je 0x100bd02d
cmp dword [esp + 0x28], 0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
je 0x100bd00e
mov edx, dword [0x102cca84]
push 0
push edx
mov edx, dword [esp + 0x2c]
push 1
push eax
push esi
push ecx
push edx
call fcn.100542d0
mov eax, 1
add esp, 0x1c
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
mov edx, dword [esp + 0x24]
push eax
push esi
push ecx
push edx
call fcn.10054350
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x10]
mov eax, dword [esp + 0x20]
and edi, 0xfbffffff
push edi
push esi
push ebp
push eax
call dword [fcn.102cd2f8]
mov ecx, dword [esp + 0x24]
xor eax, eax
lea edx, [esp + 0x410]
mov dword [esp + 0x410], eax
mov dword [esp + 0x414], eax
mov dword [esp + 0x418], eax
mov dword [esp + 0x41c], eax
push edx
mov dword [esp + 0x424], eax
mov dword [esp + 0x428], eax
mov dword [esp + 0x42c], eax
mov dword [esp + 0x414], ecx
mov dword [esp + 0x418], ebp
mov dword [esp + 0x41c], esi
mov dword [esp + 0x420], edi
call dword [sym.imp.USER32.dll_TranslateMessage]
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x838
jne 0x100bd9eb
mov eax, dword [esp + 0x660]
mov ecx, eax
and ecx, 0x80
mov ebp, eax
shr ebp, 0x10
mov dword [esp + 0x28], ecx
xor edi, edi
xor ecx, ecx
test al, 1
mov dword [esp + 0x30], ebp
mov dword [esp + 0x3d8], edi
je 0x100bd0f6
lea ecx, [edi + 1]
test al, 2
je 0x100bd0ff
mov edi, 1
test al, 4
je 0x100bd10e
mov dword [esp + 0x3d8], 1
mov edx, ebx
shr edx, 0x10
cmp ebp, 0xa
movsx eax, bx
movsx edx, dx
mov dword [esp + 0x18], eax
mov dword [esp + 0x34], edx
ja 0x100be75a
xor esi, esi
cmp ebp, 1
mov dword [esp + 0x24], ebx
mov ebx, dword [sym.imp.USER32.dll_ClientToScreen]
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], esi
jne 0x100bd17d
test ecx, ecx
je 0x100bd154
mov esi, 1
mov dword [esp + 0x14], esi
test edi, edi
je 0x100bd15f
or esi, 2
mov dword [esp + 0x14], esi
cmp dword [esp + 0x3d8], 0
je 0x100bd170
or esi, 0x10
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], 0x200
jmp 0x100bd2b5
cmp ebp, 2
jne 0x100bd198
mov esi, 1
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], 0x201
jmp 0x100bd2b5
cmp ebp, 8
jne 0x100bd1b3
mov esi, 1
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], 0x203
jmp 0x100bd2b5
cmp ebp, 3
jne 0x100bd1c5
mov dword [esp + 0x10], 0x202
jmp 0x100bd2b5
cmp ebp, 4
jne 0x100bd1e0
mov esi, 2
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], 0x204
jmp 0x100bd2b5
cmp ebp, 5
jne 0x100bd1f2
mov dword [esp + 0x10], 0x205
jmp 0x100bd2b5
cmp ebp, 6
jne 0x100bd20d
mov esi, 0x10
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], 0x207
jmp 0x100bd2b5
cmp ebp, 7
jne 0x100bd21f
mov dword [esp + 0x10], 0x208
jmp 0x100bd2b5
cmp ebp, 9
jne 0x100bd24a
test ecx, ecx
je 0x100bd22b
lea esi, [ebp - 8]
test edi, edi
je 0x100bd232
or esi, 2
cmp dword [esp + 0x3d8], 0
je 0x100bd23f
or esi, 0x10
movzx esi, si
or esi, 0x780000
jmp 0x100bd273
cmp ebp, 0xa
jne 0x100bd2b5
test ecx, ecx
je 0x100bd256
lea esi, [ebp - 9]
test edi, edi
je 0x100bd25d
or esi, 2
cmp dword [esp + 0x3d8], 0
je 0x100bd26a
or esi, 0x10
movzx esi, si
or esi, 0xff880000
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x3d8], eax
lea eax, [esp + 0x3d8]
push eax
push ecx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x3e4], edx
call ebx
movzx eax, word [esp + 0x3dc]
movzx edx, word [esp + 0x3d8]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x10], 0x20a
mov dword [esp + 0x24], eax
cmp dword [0x102cca7c], 0
jne 0x100bd2d1
cmp dword [0x102cca70], 0
jne 0x100bd2d1
or esi, 0x8000
mov dword [esp + 0x14], esi
cmp ebp, 1
jne 0x100bd36a
mov ecx, dword [esp + 0x20]
movsx esi, word [0x102cca34]
movsx edi, word [0x102cca36]
xor eax, eax
mov dword [esp + 0x3d8], eax
mov dword [esp + 0x3dc], eax
lea eax, [esp + 0x3d8]
push eax
push ecx
call ebx
mov eax, dword [esp + 0x3dc]
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x3d8]
mov ebx, dword [esp + 0x18]
add edx, eax
add ebx, ecx
movzx edx, dx
sub ecx, esi
add ecx, dword [esp + 0x18]
movzx ebx, bx
sub eax, edi
add eax, dword [esp + 0x34]
shl edx, 0x10
or edx, ebx
test ecx, ecx
mov dword [0x102cca34], edx
mov esi, eax
je 0x100bd350
push ebp
push ecx
push 0x37
call fcn.100ccca0
add esp, 0xc
test esi, esi
je 0x100bd3fe
push 1
push esi
push 0x38
call fcn.100ccca0
add esp, 0xc
jmp 0x100bd3fe
cmp ebp, 2
je 0x100bd3f2
cmp ebp, 8
je 0x100bd3f2
cmp ebp, 3
jne 0x100bd388
push 1
push 0
call fcn.100ccc60
jmp 0x100bd3fb
cmp ebp, 4
jne 0x100bd393
push 1
push 1
jmp 0x100bd3f6
cmp ebp, 5
jne 0x100bd3a3
push 1
push 1
call fcn.100ccc60
jmp 0x100bd3fb
cmp ebp, 6
jne 0x100bd3ae
push 1
push 2
jmp 0x100bd3f6
cmp ebp, 7
jne 0x100bd3be
push 1
push 2
call fcn.100ccc60
jmp 0x100bd3fb
cmp ebp, 0xa
jne 0x100bd3d8
push 1
push 4
call fcn.100ccc30
push 0xffffffffffffff88
call fcn.100c9220
add esp, 0xc
jmp 0x100bd3fe
cmp ebp, 9
jne 0x100bd3fe
push 1
push 5
call fcn.100ccc30
push 0x78
call fcn.100c9220
add esp, 0xc
jmp 0x100bd3fe
push 1
push 0
call fcn.100ccc30
add esp, 8
call fcn.100bfa90
test eax, eax
mov esi, dword [esp + 0x20]
jne 0x100bd412
push esi
call dword [sym.imp.USER32.dll_SetFocus]
push 0x797a779e
call fcn.100c14a0
mov edi, dword [esp + 0x2c]
add esp, 4
test edi, edi
je 0x100bd44a
mov eax, dword [0x102cca80]
mov ecx, dword [0x102cca34]
push 0
push eax
push 1
push ecx
push 0
push 0x84
push esi
call fcn.100542d0
add esp, 0x1c
jmp 0x100bd461
mov edx, dword [0x102cca34]
push edx
push 0
push 0x84
push esi
call fcn.100542b0
add esp, 0x10
cmp ebp, 1
jne 0x100bd497
test edi, edi
je 0x100bd486
mov eax, dword [0x102cca80]
push 0
push eax
push ebp
push 0x2000001
push esi
push 0x20
push esi
call fcn.100542d0
add esp, 0x1c
jmp 0x100bd497
push 0x2000001
push esi
push 0x20
push esi
call fcn.100542b0
add esp, 0x10
push 0x326cd5b9
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100bd8b5
cmp dword [0x102cd29c], 0
mov edi, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov ebp, dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
mov bl, 0x65
jne 0x100bd66f
lea ecx, [esp + 0x410]
push ecx
lea edx, [esp + 0x400]
push edx
mov byte [esp + 0x404], 0x75
mov byte [esp + 0x405], 0x73
mov byte [esp + 0x406], bl
mov byte [esp + 0x407], 0x72
mov byte [esp + 0x408], 0x33
mov byte [esp + 0x409], 0x32
mov byte [esp + 0x40a], 0x2e
mov byte [esp + 0x40b], 0x64
mov byte [esp + 0x40c], 0x6c
mov byte [esp + 0x40d], 0x6c
mov byte [esp + 0x40e], 0
mov byte [esp + 0x418], 0x47
mov byte [esp + 0x419], bl
mov byte [esp + 0x41a], 0x74
mov byte [esp + 0x41b], 0x52
mov byte [esp + 0x41c], bl
mov byte [esp + 0x41d], 0x67
mov byte [esp + 0x41e], 0x69
mov byte [esp + 0x41f], 0x73
mov byte [esp + 0x420], 0x74
mov byte [esp + 0x421], bl
mov byte [esp + 0x422], 0x72
mov byte [esp + 0x423], bl
mov byte [esp + 0x424], 0x64
mov byte [esp + 0x425], 0x52
mov byte [esp + 0x426], 0x61
mov byte [esp + 0x427], 0x77
mov byte [esp + 0x428], 0x49
mov byte [esp + 0x429], 0x6e
mov byte [esp + 0x42a], 0x70
mov byte [esp + 0x42b], 0x75
mov byte [esp + 0x42c], 0x74
mov byte [esp + 0x42d], 0x44
mov byte [esp + 0x42e], bl
mov byte [esp + 0x42f], 0x76
mov byte [esp + 0x430], 0x69
mov byte [esp + 0x431], 0x63
mov byte [esp + 0x432], bl
mov byte [esp + 0x433], 0x73
mov byte [esp + 0x434], 0
call ebp
push eax
call edi
mov esi, eax
test esi, esi
je 0x100bd66f
push 0x78
lea eax, [esp + 0x44]
push 0
push eax
mov dword [esp + 0x24], 0xa
call fcn.10100550
add esp, 0xc
push 0xc
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x48]
push edx
call esi
xor ecx, ecx
test eax, eax
jbe 0x100bd66f
lea edx, [esp + 0x42]
lea esp, [esp]
cmp word [edx], 2
je 0x100bd662
add ecx, 1
add edx, 0xc
cmp ecx, eax
jb 0x100bd650
jmp 0x100bd66f
lea eax, [ecx + ecx*2]
mov ecx, dword [esp + eax*4 + 0x48]
mov dword [0x102cd29c], ecx
cmp dword [0x102cd2a0], 0
jne 0x100bd80a
lea edx, [esp + 0x3e4]
push edx
lea eax, [esp + 0x434]
push eax
mov byte [esp + 0x438], 0x75
mov byte [esp + 0x439], 0x73
mov byte [esp + 0x43a], bl
mov byte [esp + 0x43b], 0x72
mov byte [esp + 0x43c], 0x33
mov byte [esp + 0x43d], 0x32
mov byte [esp + 0x43e], 0x2e
mov byte [esp + 0x43f], 0x64
mov byte [esp + 0x440], 0x6c
mov byte [esp + 0x441], 0x6c
mov byte [esp + 0x442], 0
mov byte [esp + 0x3ec], 0x47
mov byte [esp + 0x3ed], bl
mov byte [esp + 0x3ee], 0x74
mov byte [esp + 0x3ef], 0x52
mov byte [esp + 0x3f0], 0x61
mov byte [esp + 0x3f1], 0x77
mov byte [esp + 0x3f2], 0x49
mov byte [esp + 0x3f3], 0x6e
mov byte [esp + 0x3f4], 0x70
mov byte [esp + 0x3f5], 0x75
mov byte [esp + 0x3f6], 0x74
mov byte [esp + 0x3f7], 0x44
mov byte [esp + 0x3f8], bl
mov byte [esp + 0x3f9], 0x76
mov byte [esp + 0x3fa], 0x69
mov byte [esp + 0x3fb], 0x63
mov byte [esp + 0x3fc], bl
mov byte [esp + 0x3fd], 0x4c
mov byte [esp + 0x3fe], 0x69
mov byte [esp + 0x3ff], 0x73
mov byte [esp + 0x400], 0x74
mov byte [esp + 0x401], 0
call ebp
push eax
call edi
mov esi, eax
test esi, esi
je 0x100bd80a
push 0x320
lea ecx, [esp + 0xbc]
push 0
push ecx
mov dword [esp + 0x3e4], 0x64
call fcn.10100550
add esp, 0xc
push 8
lea edx, [esp + 0x3dc]
push edx
lea eax, [esp + 0xc0]
push eax
call esi
xor ecx, ecx
test eax, eax
jbe 0x100bd80a
jmp 0x100bd7e0
cmp dword [esp + ecx*8 + 0xbc], 0
jne 0x100bd7f4
cmp dword [esp + ecx*8 + 0xb8], 0
jne 0x100bd7fd
add ecx, 1
cmp ecx, eax
jb 0x100bd7e0
jmp 0x100bd80a
mov ecx, dword [esp + ecx*8 + 0xb8]
mov dword [0x102cd2a0], ecx
mov eax, dword [0x102cd29c]
test eax, eax
je 0x100bd8af
cmp dword [0x102cd2a0], 0
je 0x100bd8af
cmp dword [esp + 0x28], 0
je 0x100bd87a
mov edx, dword [0x102cca80]
push 0
push edx
push 1
push 0x12345679
push 0
push 0xff
push eax
call fcn.100542d0
mov esi, dword [esp + 0x4c]
add esp, 0x1c
cmp esi, 1
jne 0x100bd8b7
mov eax, dword [0x102cca80]
mov ecx, dword [0x102cd29c]
push 0
push eax
push esi
push 0x12345679
push 0
push 0xff
push ecx
call fcn.100542d0
add esp, 0x1c
jmp 0x100bd8b7
push 0x12345679
push 0
push 0xff
push eax
call fcn.10054350
mov esi, dword [esp + 0x30]
cmp esi, 1
jne 0x100bd8b7
mov edx, dword [0x102cd29c]
push 0x12345679
push 0
push 0xff
push edx
call fcn.10054350
jmp 0x100bd8b7
mov esi, dword [esp + 0x30]
jmp 0x100bd8b7
mov esi, ebp
cmp dword [0x102cd2b0], 0
mov edi, dword [esp + 0x10]
je 0x100bd95a
cmp edi, 0x203
je 0x100bd95a
cmp edi, 0x207
je 0x100bd95a
cmp edi, 0x208
je 0x100bd95a
mov eax, dword [0x102cd2bc]
xor ecx, ecx
cmp edi, 0x20a
lea eax, [eax + eax*2]
lea eax, [eax*8 + 0x102cc920]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], ecx
movsx ecx, word [esp + 0x664]
mov dword [eax], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + 4], ecx
jne 0x100bd930
sub esi, 9
neg esi
sbb esi, esi
and esi, 0xff100000
add esi, 0x780000
mov dword [eax + 8], esi
mov esi, dword [esp + 0x20]
push eax
push esi
call dword [sym.imp.USER32.dll_ClientToScreen]
mov eax, dword [0x102cd2bc]
add eax, 1
cmp eax, 0xa
mov dword [0x102cd2bc], eax
jb 0x100bd95e
mov dword [0x102cd2bc], 0
jmp 0x100bd95e
mov esi, dword [esp + 0x20]
cmp dword [0x101a3678], 0
je 0x100bd9c2
cmp dword [esp + 0x28], 0
je 0x100bd99f
mov edx, dword [0x102cca80]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x14]
push 0
push edx
push 1
push eax
push ecx
push edi
push esi
call fcn.100542d0
mov eax, 1
add esp, 0x1c
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x14]
push edx
push eax
push edi
push esi
call fcn.10054350
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x14]
push ecx
and eax, 0xffff7fff
push eax
push edi
push esi
call dword [fcn.102cd2f8]
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x83a
jne 0x100bda1b
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov eax, 1
mov dword [0x101a3664], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x83d
jne 0x100bda5b
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov edx, ebx
shr edx, 0x10
movsx eax, dx
movsx ecx, bx
push eax
push ecx
call fcn.100c9200
mov eax, 1
add esp, 8
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x83f
jne 0x100bda9d
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov edx, ebx
and edx, 0x7fffffff
mov eax, 1
shr ebx, 0x1f
mov dword [0x102cca4c], edx
mov dword [0x102cca48], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x863
jne 0x100bdadb
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
fild dword [esp + 0x664]
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
fdiv qword [0x1016ba98]
fstp qword [0x101a3680]
jmp 0x100be75a
cmp edi, 0x842
jne 0x100bdb5a
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
push 0x16cc25d5
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100bdb45
call fcn.100c93c0
mov esi, eax
push esi
call fcn.100437d0
mov edi, eax
push ebx
push edi
call fcn.10043500
add esp, 0xc
test esi, esi
mov dword [esp + 0x10], eax
je 0x100bdb2d
push esi
call dword [sym.imp.USER32.dll_DestroyCursor]
test edi, edi
je 0x100bdb4d
push edi
call dword [sym.imp.GDI32.dll_DeleteObject]
mov dword [esp + 0x14], 1
jmp 0x100be75a
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 1
jmp 0x100be75a
cmp edi, 0x843
jne 0x100bdc11
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
push 0x16cc25d5
call fcn.100c14a0
add esp, 4
test eax, eax
je 0x100bdbfc
call fcn.100c93c0
mov esi, eax
test esi, esi
mov edi, 0xffff
mov ebp, edi
je 0x100bdbe0
lea eax, [esp + 0x3e4]
push eax
push esi
call dword [sym.imp.USER32.dll_GetIconInfo]
mov eax, dword [esp + 0x3f4]
test eax, eax
mov edi, dword [sym.imp.GDI32.dll_DeleteObject]
je 0x100bdbbd
push eax
call edi
mov eax, dword [esp + 0x3f0]
test eax, eax
je 0x100bdbcb
push eax
call edi
mov edi, dword [esp + 0x3e8]
mov ebp, dword [esp + 0x3ec]
push esi
call dword [sym.imp.USER32.dll_DestroyCursor]
movzx eax, bp
movzx ecx, di
shl eax, 0x10
or eax, ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
jmp 0x100be75a
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0x14], 1
jmp 0x100be75a
cmp edi, 0x844
jne 0x100bdc6c
cmp dword [esp + 0x660], 0x1234
jne 0x100bdc57
mov eax, dword [0x102cca5c]
cmp eax, 0x1000
jge 0x100bdc57
lea ecx, [eax + 1]
mov dword [esp + 0x10], ecx
mov dword [eax*4 + 0x102c8838], 1
mov dword [0x102cca5c], ecx
mov dword [esp + 0x14], 1
jmp 0x100be75a
mov dword [esp + 0x10], 0x1388
mov dword [esp + 0x14], 1
jmp 0x100be75a
cmp edi, 0x845
jne 0x100bdcad
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
lea edx, [ebx - 1]
cmp edx, 0xfff
ja 0x100bb936
mov eax, 1
mov dword [ebx*4 + fcn.102c8834], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x846
jne 0x100bdda0
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
cmp ebx, ecx
mov eax, 1
jne 0x100bdcf2
mov dword [0x102cca68], ecx
mov dword [0x102cd2a8], ecx
mov dword [0x102cca64], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp ebx, eax
jne 0x100bdd13
mov dword [0x102cca64], eax
mov dword [0x102cca68], eax
mov dword [0x102cd2a8], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp ebx, 2
jne 0x100bdd36
mov dword [0x102cca64], eax
mov dword [0x102cca68], ecx
mov dword [0x102cd2a8], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp ebx, 3
jne 0x100bdd59
mov dword [0x102cd2a8], ecx
mov dword [0x102cca68], eax
mov dword [0x102cca64], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp ebx, 4
jne 0x100bdd7a
mov dword [0x102cca64], eax
mov dword [0x102cca68], eax
mov dword [0x102cd2a8], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp ebx, 5
jne 0x100bb93b
mov dword [0x102cd2a8], eax
mov dword [0x102cca68], eax
mov dword [0x102cca64], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x850
jne 0x100bddd1
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov eax, 1
mov dword [0x102cca6c], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x851
jne 0x100bde00
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov eax, dword [0x102cca34]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
jmp 0x100be75a
cmp edi, 0x852
jne 0x100bde31
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov eax, 1
mov dword [0x101a3674], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x853
jne 0x100bde62
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov eax, 1
mov dword [0x101a3678], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x84d
jne 0x100bde93
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov eax, 1
mov dword [0x102cca70], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x84f
jne 0x100be43f
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
cmp ebx, ecx
mov byte [esp + 0x3d8], 0x69
mov byte [esp + 0x3d9], 0x6d
mov byte [esp + 0x3da], 0x6d
mov byte [esp + 0x3db], 0x33
mov byte [esp + 0x3dc], 0x32
mov byte [esp + 0x3dd], 0x2e
mov byte [esp + 0x3de], 0x64
mov byte [esp + 0x3df], 0x6c
mov byte [esp + 0x3e0], 0x6c
mov byte [esp + 0x3e1], 0
je 0x100be1a3
lea ecx, [esp + 0x3d8]
push ecx
call dword [sym.imp.KERNEL32.DLL_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x100bb936
mov edi, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
lea edx, [esp + 0x430]
push edx
mov bl, 0x65
push esi
mov byte [esp + 0x438], 0x49
mov byte [esp + 0x439], 0x6d
mov byte [esp + 0x43a], 0x6d
mov byte [esp + 0x43b], 0x47
mov byte [esp + 0x43c], bl
mov byte [esp + 0x43d], 0x74
mov byte [esp + 0x43e], 0x43
mov byte [esp + 0x43f], 0x6f
mov byte [esp + 0x440], 0x6e
mov byte [esp + 0x441], 0x74
mov byte [esp + 0x442], bl
mov byte [esp + 0x443], 0x78
mov byte [esp + 0x444], 0x74
mov byte [esp + 0x445], 0
call edi
mov ebp, eax
lea eax, [esp + 0x3fc]
push eax
push esi
mov byte [esp + 0x404], 0x49
mov byte [esp + 0x405], 0x6d
mov byte [esp + 0x406], 0x6d
mov byte [esp + 0x407], 0x47
mov byte [esp + 0x408], bl
mov byte [esp + 0x409], 0x74
mov byte [esp + 0x40a], 0x4f
mov byte [esp + 0x40b], 0x70
mov byte [esp + 0x40c], bl
mov byte [esp + 0x40d], 0x6e
mov byte [esp + 0x40e], 0x53
mov byte [esp + 0x40f], 0x74
mov byte [esp + 0x410], 0x61
mov byte [esp + 0x411], 0x74
mov byte [esp + 0x412], 0x75
mov byte [esp + 0x413], 0x73
mov byte [esp + 0x414], 0
call edi
lea ecx, [esp + 0x410]
push ecx
push esi
mov dword [esp + 0x20], eax
mov byte [esp + 0x418], 0x49
mov byte [esp + 0x419], 0x6d
mov byte [esp + 0x41a], 0x6d
mov byte [esp + 0x41b], 0x53
mov byte [esp + 0x41c], bl
mov byte [esp + 0x41d], 0x74
mov byte [esp + 0x41e], 0x4f
mov byte [esp + 0x41f], 0x70
mov byte [esp + 0x420], bl
mov byte [esp + 0x421], 0x6e
mov byte [esp + 0x422], 0x53
mov byte [esp + 0x423], 0x74
mov byte [esp + 0x424], 0x61
mov byte [esp + 0x425], 0x74
mov byte [esp + 0x426], 0x75
mov byte [esp + 0x427], 0x73
mov byte [esp + 0x428], 0
call edi
mov dword [esp + 0x28], eax
mov byte [esp + 0x3e4], 0x49
mov byte [esp + 0x3e5], 0x6d
mov byte [esp + 0x3e6], 0x6d
mov byte [esp + 0x3e7], 0x52
mov byte [esp + 0x3e8], bl
mov byte [esp + 0x3e9], 0x6c
mov byte [esp + 0x3ea], bl
mov byte [esp + 0x3eb], 0x61
mov byte [esp + 0x3ec], 0x73
mov byte [esp + 0x3ed], bl
mov byte [esp + 0x3ee], 0x43
mov byte [esp + 0x3ef], 0x6f
mov byte [esp + 0x3f0], 0x6e
mov byte [esp + 0x3f1], 0x74
mov byte [esp + 0x3f2], bl
mov byte [esp + 0x3f3], 0x78
lea edx, [esp + 0x3e4]
push edx
push esi
mov byte [esp + 0x3fc], 0x74
mov byte [esp + 0x3fd], 0
call edi
mov ebx, eax
mov eax, dword [0x102cca40]
push eax
call ebp
mov edi, eax
push edi
call dword [esp + 0x1c]
test eax, eax
jne 0x100be180
push 1
push edi
call dword [esp + 0x30]
mov ecx, dword [0x102cca40]
push edi
push ecx
call ebx
push esi
call dword [sym.imp.KERNEL32.DLL_FreeLibrary]
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
lea edx, [esp + 0x3d8]
push edx
call dword [sym.imp.KERNEL32.DLL_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x100bb936
mov edi, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
lea eax, [esp + 0x430]
push eax
mov bl, 0x65
push esi
mov byte [esp + 0x438], 0x49
mov byte [esp + 0x439], 0x6d
mov byte [esp + 0x43a], 0x6d
mov byte [esp + 0x43b], 0x47
mov byte [esp + 0x43c], bl
mov byte [esp + 0x43d], 0x74
mov byte [esp + 0x43e], 0x43
mov byte [esp + 0x43f], 0x6f
mov byte [esp + 0x440], 0x6e
mov byte [esp + 0x441], 0x74
mov byte [esp + 0x442], bl
mov byte [esp + 0x443], 0x78
mov byte [esp + 0x444], 0x74
mov byte [esp + 0x445], 0
call edi
lea ecx, [esp + 0x410]
push ecx
push esi
mov ebp, eax
mov byte [esp + 0x418], 0x49
mov byte [esp + 0x419], 0x6d
mov byte [esp + 0x41a], 0x6d
mov byte [esp + 0x41b], 0x47
mov byte [esp + 0x41c], bl
mov byte [esp + 0x41d], 0x74
mov byte [esp + 0x41e], 0x4f
mov byte [esp + 0x41f], 0x70
mov byte [esp + 0x420], bl
mov byte [esp + 0x421], 0x6e
mov byte [esp + 0x422], 0x53
mov byte [esp + 0x423], 0x74
mov byte [esp + 0x424], 0x61
mov byte [esp + 0x425], 0x74
mov byte [esp + 0x426], 0x75
mov byte [esp + 0x427], 0x73
mov byte [esp + 0x428], 0
call edi
lea edx, [esp + 0x3fc]
push edx
push esi
mov dword [esp + 0x20], eax
mov byte [esp + 0x404], 0x49
mov byte [esp + 0x405], 0x6d
mov byte [esp + 0x406], 0x6d
mov byte [esp + 0x407], 0x53
mov byte [esp + 0x408], bl
mov byte [esp + 0x409], 0x74
mov byte [esp + 0x40a], 0x4f
mov byte [esp + 0x40b], 0x70
mov byte [esp + 0x40c], bl
mov byte [esp + 0x40d], 0x6e
mov byte [esp + 0x40e], 0x53
mov byte [esp + 0x40f], 0x74
mov byte [esp + 0x410], 0x61
mov byte [esp + 0x411], 0x74
mov byte [esp + 0x412], 0x75
mov byte [esp + 0x413], 0x73
mov byte [esp + 0x414], 0
call edi
mov dword [esp + 0x28], eax
mov byte [esp + 0x3e4], 0x49
mov byte [esp + 0x3e5], 0x6d
mov byte [esp + 0x3e6], 0x6d
mov byte [esp + 0x3e7], 0x52
mov byte [esp + 0x3e8], bl
mov byte [esp + 0x3e9], 0x6c
mov byte [esp + 0x3ea], bl
mov byte [esp + 0x3eb], 0x61
mov byte [esp + 0x3ec], 0x73
mov byte [esp + 0x3ed], bl
mov byte [esp + 0x3ee], 0x43
mov byte [esp + 0x3ef], 0x6f
mov byte [esp + 0x3f0], 0x6e
mov byte [esp + 0x3f1], 0x74
mov byte [esp + 0x3f2], bl
mov byte [esp + 0x3f3], 0x78
lea eax, [esp + 0x3e4]
push eax
push esi
mov byte [esp + 0x3fc], 0x74
mov byte [esp + 0x3fd], 0
call edi
mov ecx, dword [0x102cca40]
push ecx
mov ebx, eax
call ebp
mov edi, eax
push edi
call dword [esp + 0x1c]
test eax, eax
je 0x100be41c
push 0
push edi
call dword [esp + 0x30]
mov edx, dword [0x102cca40]
push edi
push edx
call ebx
push esi
call dword [sym.imp.KERNEL32.DLL_FreeLibrary]
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x847
jne 0x100be470
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov eax, 1
mov dword [0x102cca74], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x848
jne 0x100be4a1
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov eax, 1
mov dword [0x102cca78], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x840
jne 0x100be4cc
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x841
jne 0x100be4f7
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x849
jne 0x100be52f
mov eax, dword [esp + 0x660]
cmp eax, ecx
je 0x100be50f
mov dword [0x102cca84], eax
cmp ebx, ecx
je 0x100bb936
mov eax, 1
mov dword [0x102cca80], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x84a
jne 0x100be61d
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
cmp ebx, ecx
je 0x100be605
push 0xff
lea eax, [esp + 0x555]
push 0
push eax
mov byte [0x102cca90], 0
mov byte [esp + 0x55c], 0
call fcn.10100550
mov ecx, dword [esp + 0x24]
add esp, 0xc
push ecx
push 3
call fcn.100dafa0
add esp, 4
push eax
lea edx, [esp + 0x558]
push edx
call fcn.10101330
add esp, 0xc
lea eax, [esp + 0x550]
push eax
push 0
push 0xf001f
call fcn.100b0c70
mov edi, eax
test edi, edi
je 0x100be5e9
push 0
push 0
push 0
push 6
push edi
call fcn.100b0c20
mov esi, 0x102cca90
mov ecx, eax
sub esi, eax
jmp 0x100be5d0
mov dl, byte [ecx]
mov byte [ecx + esi], dl
add ecx, 1
test dl, dl
jne 0x100be5d0
push eax
call fcn.100b0c50
push edi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
mov eax, 1
mov dword [0x102cca88], 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
mov eax, 1
mov dword [0x102cca88], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100be75a
cmp edi, 0x84b
jne 0x100be655
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
xor edx, edx
cmp ebx, ecx
setne dl
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [0x101a3670], edx
jmp 0x100be75a
cmp edi, 0x854
jne 0x100be684
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov eax, dword [0x102cca50]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
jmp 0x100be75a
cmp edi, 0x86b
jne 0x100be6ae
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], 1
jmp 0x100be75a
cmp edi, 0x84c
jne 0x100be75a
cmp dword [esp + 0x660], 0x1234
jne 0x100be75a
mov esi, 1
push esi
mov dword [0x101a3670], 0
call fcn.100c2d50
add esp, 4
mov dword [0x101a3670], esi
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], esi
jmp 0x100be75a
cmp dword [0x102cca40], ecx
je 0x100be75a
push 0x592629e2
call fcn.100c14a0
add esp, 4
test eax, eax
jne 0x100be714
cmp dword [0x102cca64], eax
je 0x100be737
cmp dword [0x102cca7c], 0
jne 0x100be737
mov ecx, dword [esp + 0x660]
mov edx, dword [esp + 0x20]
push ebx
push ecx
push edi
push edx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x100bb785
movsx eax, bx
shr ebx, 0x10
cmp dword [0x102cca74], 0
movsx ecx, bx
jne 0x100be75a
movzx ecx, cx
movzx edx, ax
shl ecx, 0x10
or ecx, edx
mov dword [0x102cca34], ecx
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100be773
push eax
call fcn.100b0c50
mov eax, dword [esp + 0x3c]
push eax
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
cmp dword [esp + 0x14], 1
jne 0x100be783
mov eax, dword [esp + 0x10]
jmp 0x100bb785
mov eax, dword [fcn.102cd2f8]
test eax, eax
mov ecx, dword [esp + 0x668]
je 0x100be7bb
test ecx, ecx
jne 0x100be7bb
mov ecx, dword [esp + 0x664]
mov edx, dword [esp + 0x660]
push ecx
mov ecx, dword [esp + 0x660]
push edx
mov edx, dword [esp + 0x28]
push ecx
push edx
call eax
jmp 0x100bb785
mov eax, dword [0x102cd304]
test eax, eax
je 0x100bb783
test ecx, ecx
je 0x100bb783
mov edx, dword [esp + 0x664]
push edx
mov edx, dword [esp + 0x664]
push edx
mov edx, dword [esp + 0x664]
push edx
mov edx, dword [esp + 0x2c]
push edx
push ecx
call eax
jmp 0x100bb785