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

Disassembly:
sub esp, 0x644
mov eax, dword [0x101b734c]
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 0x100bc982
cmp dword [esp + 0x660], 0x1234
jne 0x100bc982
push 0xff
lea ecx, [esp + 0x455]
push ebp
push ecx
mov byte [esp + 0x45c], 0
call fcn.10100e30
mov edx, dword [esp + 0x24]
add esp, 0xc
push edx
push 2
call fcn.100db890
add esp, 4
push eax
lea eax, [esp + 0x458]
push eax
call fcn.10101c10
add esp, 0xc
lea ecx, [esp + 0x450]
push ecx
push ebp
push 0xf001f
call fcn.100b1f70
mov esi, eax
test esi, esi
mov dword [esp + 0x3c], esi
je 0x100bc963
push ebp
push ebp
push ebp
push 6
push esi
call fcn.100b1f20
mov ebp, eax
test ebp, ebp
mov dword [esp + 0x38], ebp
jne 0x100bc980
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.101003d3
add esp, 0x644
ret 0x14
xor esi, esi
call fcn.100c3af0
cmp eax, esi
jbe 0x100bca6a
nop
cmp eax, 1
jne 0x100bc99f
call fcn.100c7770
jmp 0x100bca5d
cmp eax, 2
jne 0x100bc9ae
call fcn.100c7650
jmp 0x100bca5d
cmp eax, 3
jne 0x100bc9bd
call fcn.100c76e0
jmp 0x100bca5d
cmp eax, 4
jne 0x100bc9cc
call fcn.100cd450
jmp 0x100bca5d
cmp eax, 5
jne 0x100bc9db
call fcn.100cd4a0
jmp 0x100bca5d
cmp eax, 6
jne 0x100bc9e7
call fcn.100cbe70
jmp 0x100bca5d
cmp eax, 7
jne 0x100bc9f3
call fcn.100cbec0
jmp 0x100bca5d
cmp eax, 8
jne 0x100bc9ff
call fcn.100c9660
jmp 0x100bca5d
cmp eax, 9
jne 0x100bca0b
call fcn.100cd4f0
jmp 0x100bca5d
cmp eax, 0xa
jne 0x100bca17
call fcn.100cd540
jmp 0x100bca5d
cmp eax, 0xb
jne 0x100bca23
call fcn.100cbf10
jmp 0x100bca5d
cmp eax, 0xc
jne 0x100bca2f
call fcn.100cbf60
jmp 0x100bca5d
cmp eax, 0xd
jne 0x100bca3b
call fcn.100c9c50
jmp 0x100bca5d
cmp eax, 0xe
jne 0x100bca47
call fcn.100c9ce0
jmp 0x100bca5d
cmp eax, 0xf
jne 0x100bca53
call fcn.100c7810
jmp 0x100bca5d
cmp eax, 0x10
jne 0x100bca5d
call fcn.100c78c0
call fcn.100c3af0
cmp eax, esi
ja 0x100bc990
mov eax, dword [0x101a3690]
mov esi, eax
test esi, esi
jne 0x100bcaa8
cmp dword [0x101a3694], eax
je 0x100bcaa8
cmp edi, 6
je 0x100bcaa3
cmp edi, 0x1c
je 0x100bcaa3
cmp edi, 0x86
je 0x100bcaa3
cmp edi, 8
je 0x100bcaa3
cmp edi, 0x46
je 0x100bcaa3
cmp edi, 0x47
je 0x100bcaa3
cmp edi, 0x18
jne 0x100bcaa8
mov esi, 1
test eax, eax
jne 0x100bcae5
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
mov edx, eax
sub edx, dword [0x102cd2b4]
cmp edx, 0xbb8
jb 0x100bcae5
push 1
mov dword [0x102cd2b4], eax
mov dword [0x101a3698], 0
call fcn.100c3ba0
add esp, 4
mov dword [0x101a3698], 1
call fcn.10154b80
cmp edi, 0x8b0
jb 0x100bcb28
cmp edi, 0x8ba
jae 0x100bcb30
mov eax, dword [esp + 0x660]
mov ecx, dword [esp + 0x20]
push ebx
push eax
push ecx
push edi
call fcn.100d83a0
test eax, eax
je 0x100bf93a
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x8ba
jb 0x100bcb4e
cmp edi, 0x8bf
jae 0x100bcb4e
mov edx, dword [esp + 0x660]
mov eax, dword [esp + 0x20]
push ebx
push edx
push eax
push edi
call fcn.1000c5a0
jmp 0x100bcb0e
xor ecx, ecx
cmp esi, ecx
jne 0x100bcb99
cmp edi, 0x84e
jne 0x100bf93a
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov eax, 1
mov ecx, ebx
and ecx, eax
and ebx, 0x8000
mov dword [0x101a3690], ecx
mov dword [0x101a3694], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x84e
jne 0x100bcbda
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov eax, 1
mov edx, ebx
and edx, eax
and ebx, 0x8000
mov dword [0x101a3690], edx
mov dword [0x101a3694], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 6
jne 0x100bcc1b
push 0x596235d2
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100bf93a
cmp dword [0x102cca9c], 0
jne 0x100bf93a
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 0x100bc965
cmp edi, 0x1c
jne 0x100bcc5c
push 0x596235d2
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100bf93a
cmp dword [0x102cca9c], 0
jne 0x100bf93a
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 0x100bc965
cmp edi, 0x86
jne 0x100bcc8b
push 0x596235d2
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100bf93a
cmp dword [0x102cca9c], 0
jne 0x100bf93a
jmp 0x100bc963
cmp edi, 8
jne 0x100bcccc
push 0x596235d2
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100bf93a
cmp dword [0x102cca9c], 0
jne 0x100bf93a
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 0x100bc965
cmp edi, 0x46
jne 0x100bcd0d
push 0x596235d2
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100bf93a
cmp dword [0x102cca9c], 0
jne 0x100bf93a
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 0x100bc965
cmp edi, 0x47
jne 0x100bcd4e
push 0x596235d2
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100bf93a
cmp dword [0x102cca9c], 0
jne 0x100bf93a
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 0x100bc965
cmp edi, 0x18
jne 0x100bcd8f
push 0x596235d2
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100bf93a
cmp dword [0x102cca9c], 0
jne 0x100bf93a
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 0x100bc965
cmp edi, 0x215
jne 0x100bcda1
push 0x7fae1452
jmp 0x100bcc69
cmp edi, 0x84
jne 0x100bcecd
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 0x100bceaf
cmp esi, dword [esp + 0x28]
jge 0x100bceaf
cmp ebp, dword [esp + 0x1c]
jl 0x100bceaf
cmp ebp, dword [esp + 0x2c]
jge 0x100bceaf
push 0x592629e2
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bce46
cmp dword [0x102cca84], eax
je 0x100bce5e
cmp dword [0x102cca9c], 0
jne 0x100bce5e
mov ebx, dword [0x102cca54]
mov dword [esp + 0x664], ebx
jmp 0x100bce6f
movzx ecx, bp
movzx edx, si
shl ecx, 0x10
or ecx, edx
mov dword [0x102cca54], ecx
push 0x5e1c1dfb
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100bf93a
cmp dword [0x102cca9c], 0
jne 0x100bf93a
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 0x100bc965
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 0x100bc965
cmp edi, 0xa0
je 0x100bf8d3
cmp edi, 0xa1
je 0x100bf8d3
cmp edi, 0xa2
je 0x100bf8d3
cmp edi, 0xa3
je 0x100bf8d3
cmp edi, 0xa4
je 0x100bf8d3
cmp edi, 0xa5
je 0x100bf8d3
cmp edi, 0xa6
je 0x100bf8d3
cmp edi, 0xa7
je 0x100bf8d3
cmp edi, 0xa8
je 0x100bf8d3
cmp edi, 0xa9
je 0x100bf8d3
cmp edi, 0x200
jne 0x100bd00e
cmp dword [0x102cca60], ecx
mov edi, 0x8000
je 0x100bcfce
push 0x592629e2
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bcf77
cmp dword [0x102cca84], eax
je 0x100bcf8d
cmp dword [0x102cca9c], 0
jne 0x100bcf8d
test dword [esp + 0x660], edi
je 0x100bc963
movsx ecx, bx
shr ebx, 0x10
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca60]
movsx edx, bx
push eax
push ecx
mov dword [esp + 0x24], edx
call dword [sym.imp.USER32.dll_ClientToScreen]
cmp dword [0x102cca94], 0
jne 0x100bcfce
movzx edx, word [esp + 0x1c]
movzx eax, word [esp + 0x18]
shl edx, 0x10
or edx, eax
mov dword [0x102cca54], edx
test dword [esp + 0x660], edi
jne 0x100bcff1
push 0
call fcn.100ca700
add esp, 4
test eax, eax
jne 0x100bcff1
cmp dword [0x102cca94], eax
je 0x100bc963
and dword [esp + 0x660], 0xffff7fff
push 0x200
call fcn.100bc460
add esp, 4
jmp 0x100bf93a
cmp edi, 0x201
jne 0x100bd10e
cmp dword [0x102cca60], ecx
mov edi, 0x8000
je 0x100bd0ce
push 0x5e1c1dfb
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd044
cmp dword [0x102cca84], eax
je 0x100bd05a
cmp dword [0x102cca9c], 0
jne 0x100bd05a
test dword [esp + 0x660], edi
je 0x100bc963
push 0x592629e2
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd073
cmp dword [0x102cca84], eax
je 0x100bd0b9
cmp dword [0x102cca9c], 0
jne 0x100bd0b9
mov eax, dword [0x102cca54]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca60]
push eax
push ecx
mov dword [esp + 0x24], edx
call fcn.100c1910
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 0x100bd0f1
push 0
push 0
call fcn.100cdaa0
add esp, 8
test dword [esp + 0x660], edi
jne 0x100bd0f1
push 0
call fcn.100ca700
add esp, 4
test eax, eax
jne 0x100bd0f1
cmp dword [0x102cca94], eax
je 0x100bc963
and dword [esp + 0x660], 0xffff7fff
push 0x201
call fcn.100bc460
add esp, 4
jmp 0x100bf93a
cmp edi, 0x202
jne 0x100bd20e
cmp dword [0x102cca60], ecx
mov edi, 0x8000
je 0x100bd1ce
push 0x5e1c1dfb
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd144
cmp dword [0x102cca84], eax
je 0x100bd15a
cmp dword [0x102cca9c], 0
jne 0x100bd15a
test dword [esp + 0x660], edi
je 0x100bc963
push 0x592629e2
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd173
cmp dword [0x102cca84], eax
je 0x100bd1b9
cmp dword [0x102cca9c], 0
jne 0x100bd1b9
mov eax, dword [0x102cca54]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca60]
push eax
push ecx
mov dword [esp + 0x24], edx
call fcn.100c1910
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 0x100bd1f1
push 0
push 0
call fcn.100cdad0
add esp, 8
test dword [esp + 0x660], edi
jne 0x100bd1f1
push 0
call fcn.100ca700
add esp, 4
test eax, eax
jne 0x100bd1f1
cmp dword [0x102cca94], eax
je 0x100bc963
and dword [esp + 0x660], 0xffff7fff
push 0x202
call fcn.100bc460
add esp, 4
jmp 0x100bf93a
cmp edi, 0x203
jne 0x100bd2ec
cmp dword [0x102cca60], ecx
mov edi, 0x8000
je 0x100bd2b9
push 0x5e1c1dfb
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd244
cmp dword [0x102cca84], eax
je 0x100bd25a
cmp dword [0x102cca9c], 0
jne 0x100bd25a
test dword [esp + 0x660], edi
je 0x100bc963
push 0x592629e2
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd273
cmp dword [0x102cca84], eax
je 0x100bd2b9
cmp dword [0x102cca9c], 0
jne 0x100bd2b9
mov eax, dword [0x102cca54]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca60]
push eax
push ecx
mov dword [esp + 0x24], edx
call fcn.100c1910
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 0x100bd2dc
push 0
call fcn.100ca700
add esp, 4
test eax, eax
jne 0x100bd2dc
cmp dword [0x102cca94], eax
je 0x100bc963
and dword [esp + 0x660], 0xffff7fff
jmp 0x100bf93a
cmp edi, 0x204
jne 0x100bd3ec
cmp dword [0x102cca60], ecx
mov edi, 0x8000
je 0x100bd3ac
push 0x5e1c1dfb
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd322
cmp dword [0x102cca84], eax
je 0x100bd338
cmp dword [0x102cca9c], 0
jne 0x100bd338
test dword [esp + 0x660], edi
je 0x100bc963
push 0x592629e2
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd351
cmp dword [0x102cca84], eax
je 0x100bd397
cmp dword [0x102cca9c], 0
jne 0x100bd397
mov eax, dword [0x102cca54]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca60]
push eax
push ecx
mov dword [esp + 0x24], edx
call fcn.100c1910
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 0x100bd3cf
push 0
push 1
call fcn.100cdaa0
add esp, 8
test dword [esp + 0x660], edi
jne 0x100bd3cf
push 0
call fcn.100ca700
add esp, 4
test eax, eax
jne 0x100bd3cf
cmp dword [0x102cca94], eax
je 0x100bc963
and dword [esp + 0x660], 0xffff7fff
push 0x204
call fcn.100bc460
add esp, 4
jmp 0x100bf93a
cmp edi, 0x205
jne 0x100bd4ec
cmp dword [0x102cca60], ecx
mov edi, 0x8000
je 0x100bd4ac
push 0x5e1c1dfb
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd422
cmp dword [0x102cca84], eax
je 0x100bd438
cmp dword [0x102cca9c], 0
jne 0x100bd438
test dword [esp + 0x660], edi
je 0x100bc963
push 0x592629e2
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd451
cmp dword [0x102cca84], eax
je 0x100bd497
cmp dword [0x102cca9c], 0
jne 0x100bd497
mov eax, dword [0x102cca54]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca60]
push eax
push ecx
mov dword [esp + 0x24], edx
call fcn.100c1910
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 0x100bd4cf
push 0
push 1
call fcn.100cdad0
add esp, 8
test dword [esp + 0x660], edi
jne 0x100bd4cf
push 0
call fcn.100ca700
add esp, 4
test eax, eax
jne 0x100bd4cf
cmp dword [0x102cca94], eax
je 0x100bc963
and dword [esp + 0x660], 0xffff7fff
push 0x205
call fcn.100bc460
add esp, 4
jmp 0x100bf93a
cmp edi, 0x207
jne 0x100bd5b5
cmp dword [0x102cca60], ecx
mov edi, 0x8000
je 0x100bd2b9
push 0x5e1c1dfb
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd522
cmp dword [0x102cca84], eax
je 0x100bd538
cmp dword [0x102cca9c], 0
jne 0x100bd538
test dword [esp + 0x660], edi
je 0x100bc963
push 0x592629e2
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd551
cmp dword [0x102cca84], eax
je 0x100bd597
cmp dword [0x102cca9c], 0
jne 0x100bd597
mov eax, dword [0x102cca54]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca60]
push eax
push ecx
mov dword [esp + 0x24], edx
call fcn.100c1910
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 0x100bd2dc
push 0
push 2
call fcn.100cdaa0
add esp, 8
jmp 0x100bd2b9
cmp edi, 0x208
jne 0x100bd67e
cmp dword [0x102cca60], ecx
mov edi, 0x8000
je 0x100bd2b9
push 0x5e1c1dfb
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd5eb
cmp dword [0x102cca84], eax
je 0x100bd601
cmp dword [0x102cca9c], 0
jne 0x100bd601
test dword [esp + 0x660], edi
je 0x100bc963
push 0x592629e2
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd61a
cmp dword [0x102cca84], eax
je 0x100bd660
cmp dword [0x102cca9c], 0
jne 0x100bd660
mov eax, dword [0x102cca54]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [0x102cca60]
push eax
push ecx
mov dword [esp + 0x24], edx
call fcn.100c1910
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 0x100bd2dc
push 0
push 2
call fcn.100cdad0
add esp, 8
jmp 0x100bd2b9
cmp edi, 0x20a
jne 0x100bd748
cmp dword [0x102cca60], ecx
mov edi, 0x8000
je 0x100bd708
push 0x5e1c1dfb
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd6b0
cmp dword [0x102cca84], eax
je 0x100bd6c6
cmp dword [0x102cca9c], 0
jne 0x100bd6c6
test dword [esp + 0x660], edi
je 0x100bc963
push 0x592629e2
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd6df
cmp dword [0x102cca84], eax
je 0x100bd708
cmp dword [0x102cca9c], 0
jne 0x100bd708
mov eax, dword [0x102cca54]
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 0x100bd72b
push 0
call fcn.100ca700
add esp, 4
test eax, eax
jne 0x100bd72b
cmp dword [0x102cca94], eax
je 0x100bc963
and dword [esp + 0x660], 0xffff7fff
push 0x20a
call fcn.100bc460
add esp, 4
jmp 0x100bf93a
cmp edi, 0x2a3
jne 0x100bd7e2
cmp dword [0x102cca60], ecx
je 0x100bf93a
push 0x592629e2
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd77d
cmp dword [0x102cca84], eax
je 0x100bf93a
cmp dword [0x102cca9c], 0
jne 0x100bf93a
mov eax, dword [0x102cca54]
movsx edx, ax
shr eax, 0x10
lea ecx, [esp + 0x18]
mov dword [esp + 0x18], edx
mov edx, dword [0x102cca60]
movsx eax, ax
push ecx
push edx
mov dword [esp + 0x664], 0x2a1
mov dword [esp + 0x668], 0
mov dword [esp + 0x24], eax
call fcn.100c1910
movzx eax, word [esp + 0x1c]
movzx ecx, word [esp + 0x18]
shl eax, 0x10
or eax, ecx
mov dword [esp + 0x664], eax
jmp 0x100bf93a
cmp edi, 0x2a2
jne 0x100bd87c
cmp dword [0x102cca60], ecx
je 0x100bf93a
push 0x592629e2
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bd817
cmp dword [0x102cca84], eax
je 0x100bf93a
cmp dword [0x102cca9c], 0
jne 0x100bf93a
mov eax, dword [0x102cca54]
movsx edx, ax
shr eax, 0x10
lea ecx, [esp + 0x18]
mov dword [esp + 0x18], edx
mov edx, dword [0x102cca60]
movsx eax, ax
push ecx
push edx
mov dword [esp + 0x664], 0x2a1
mov dword [esp + 0x668], 0
mov dword [esp + 0x24], eax
call fcn.100c1910
movzx eax, word [esp + 0x1c]
movzx ecx, word [esp + 0x18]
shl eax, 0x10
or eax, ecx
mov dword [esp + 0x664], eax
jmp 0x100bf93a
cmp edi, 0x100
jne 0x100bd8bd
test ebx, 0x4000000
jne 0x100bd89e
push 1
call fcn.100ca700
add esp, 4
test eax, eax
je 0x100bc963
and ebx, 0xfbffffff
push 0x100
mov dword [esp + 0x668], ebx
call fcn.100bc3f0
add esp, 4
jmp 0x100bf93a
cmp edi, 0x101
jne 0x100bd8fe
test ebx, 0x4000000
jne 0x100bd8df
push 1
call fcn.100ca700
add esp, 4
test eax, eax
je 0x100bc963
and ebx, 0xfbffffff
push 0x101
mov dword [esp + 0x668], ebx
call fcn.100bc3f0
add esp, 4
jmp 0x100bf93a
cmp edi, 0x104
jne 0x100bd93f
test ebx, 0x4000000
jne 0x100bd920
push 1
call fcn.100ca700
add esp, 4
test eax, eax
je 0x100bc963
and ebx, 0xfbffffff
push 0x104
mov dword [esp + 0x668], ebx
call fcn.100bc3f0
add esp, 4
jmp 0x100bf93a
cmp edi, 0x105
jne 0x100bd980
test ebx, 0x4000000
jne 0x100bd961
push 1
call fcn.100ca700
add esp, 4
test eax, eax
je 0x100bc963
and ebx, 0xfbffffff
push 0x105
mov dword [esp + 0x668], ebx
call fcn.100bc3f0
add esp, 4
jmp 0x100bf93a
cmp edi, 0x106
jne 0x100bd9b4
test ebx, 0x4000000
jne 0x100bd9a2
push 1
call fcn.100ca700
add esp, 4
test eax, eax
je 0x100bc963
and ebx, 0xfbffffff
mov dword [esp + 0x664], ebx
jmp 0x100bf93a
cmp edi, 0x102
jne 0x100bda3b
mov al, byte [esp + 0x660]
cmp al, 0x76
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
mov edi, 0x8000
je 0x100bd9d6
cmp al, 0x56
jne 0x100bd9e3
push 0x11
call esi
test di, ax
jne 0x100bc963
cmp dword [0x102cd2c8], 0
je 0x100bda06
test ebx, 0x4000000
jne 0x100bda06
push 1
call fcn.100ca700
add esp, 4
test eax, eax
je 0x100bc963
push 0x10
call esi
test di, ax
je 0x100bda29
mov edx, dword [esp + 0x660]
push edx
call fcn.100c9f50
movsx eax, al
add esp, 4
mov dword [esp + 0x660], eax
and ebx, 0xfbffffff
mov dword [esp + 0x664], ebx
jmp 0x100bf93a
cmp edi, 0x7e9
jne 0x100bdbe1
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
call fcn.100bc560
xor esi, esi
cmp dword [ebp + 0x1000424], esi
jbe 0x100bda89
lea edi, [ebp + 0x1000024]
lea ecx, [ecx]
push edi
mov ecx, 0x102cd334
call fcn.10070710
add esi, 1
add edi, 4
cmp esi, dword [ebp + 0x1000424]
jb 0x100bda70
push 0x400
lea ecx, [ebp + 0x1000024]
push 0
push ecx
call fcn.10100e30
push ebp
call fcn.100c6ec0
add esp, 0x10
test eax, eax
je 0x100bdb00
push ebp
call fcn.100c9450
add esp, 4
test eax, eax
je 0x100bdb00
push ebp
call fcn.100c6a30
add esp, 4
test eax, eax
je 0x100bdb00
push ebp
call fcn.100c2a10
add esp, 4
test eax, eax
je 0x100bdb00
push ebp
call fcn.100ca7b0
add esp, 4
test eax, eax
je 0x100bdb00
push ebp
call fcn.100c6d30
add esp, 4
test eax, eax
je 0x100bdb00
push ebp
call fcn.100c9a70
add esp, 4
test eax, eax
je 0x100bdb00
mov ebx, 1
mov ebp, ebx
jmp 0x100bdb05
xor ebp, ebp
lea ebx, [ebp + 1]
push 0x3f1c98f9
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100bdb1c
call dword [sym.imp.USER32.dll_ReleaseCapture]
push 0x6f4b12d3
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100bdb32
call fcn.100b0c40
push 0x6a5a450a
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100bdb49
mov dword [0x102ccaac], ebx
push 0x7d877e7a
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100bdb60
mov dword [0x102cd2b0], ebx
mov eax, dword [esp + 0x38]
lea esi, [eax + 0x1000474]
mov ecx, 8
mov edi, 0x102cc858
rep movsd dword es:[edi], dword [esi]
lea esi, [eax + 0x1000494]
mov ecx, 8
mov edi, 0x102cca30
rep movsd dword es:[edi], dword [esi]
call fcn.100bc3b0
call dword [sym.imp.KERNEL32.DLL_GetCurrentThreadId]
xor esi, esi
cmp ebp, esi
mov dword [0x102cd314], eax
mov dword [0x101a3698], esi
je 0x100bdbb5
push esi
call fcn.100c3ba0
add esp, 4
test eax, eax
mov dword [esp + 0x10], ebx
jne 0x100bdbb9
mov dword [esp + 0x10], esi
push 0x4000
push esi
push 0x102c8858
mov dword [0x101a3698], ebx
mov dword [esp + 0x20], ebx
call fcn.10100e30
add esp, 0xc
mov dword [0x102cca7c], esi
jmp 0x100bf93a
cmp edi, 0x7ea
jne 0x100bdc18
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov edx, dword [esp + 0x20]
push edx
call fcn.100bc7e0
add esp, 4
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
jmp 0x100bf93a
cmp edi, 0x837
jne 0x100be29c
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 0x100bdc4f
mov ebp, 1
cmp esi, 2
ja 0x100bf93a
cmp dword [esp + 0x664], 0
jl 0x100bf93a
cmp dword [esp + 0x664], 0xff
jg 0x100bf93a
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.1004f0c0
add esp, 4
test eax, eax
je 0x100bdcb5
or edi, 0x1000000
mov dword [esp + 0x14], edi
cmp esi, 1
jne 0x100bdd00
test ebp, ebp
jne 0x100bdcdf
cmp dword [esp + 0x664], 0x79
je 0x100bdcdf
mov edx, dword [esp + 0x664]
push edx
mov dword [esp + 0x14], 0x100
call fcn.100cdb50
jmp 0x100bdd4c
mov edx, dword [esp + 0x664]
or edi, 0x20000000
push edx
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], 0x104
call fcn.100cdb50
jmp 0x100bdd4c
test ebp, ebp
jne 0x100bdd22
cmp dword [esp + 0x664], 0x79
je 0x100bdd22
or edi, 0xc0000000
mov dword [esp + 0x10], 0x101
mov dword [esp + 0x14], edi
jmp 0x100bdd3a
or edi, 0x20000000
or edi, 0xc0000000
mov dword [esp + 0x10], 0x105
mov dword [esp + 0x14], edi
cmp esi, 2
jne 0x100bdd4f
mov eax, dword [esp + 0x664]
push eax
call fcn.100cdb90
add esp, 4
test ebx, ebx
je 0x100bdd59
xor edi, edi
mov dword [esp + 0x14], edi
call fcn.100c0c70
mov ebx, dword [esp + 0x20]
mov esi, eax
test esi, esi
mov dword [esp + 0x24], esi
jne 0x100bdd79
push ebx
call dword [sym.imp.USER32.dll_SetFocus]
mov esi, ebx
mov dword [esp + 0x24], esi
push 0x797a779e
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bdd90
mov esi, ebx
mov dword [esp + 0x24], esi
cmp dword [0x102cca9c], 0
jne 0x100bddb0
cmp esi, ebx
jne 0x100bddb0
cmp dword [0x102cca90], 0
jne 0x100bddb0
or edi, 0x4000000
mov dword [esp + 0x14], edi
push 0x18d3d20
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100be15d
cmp dword [0x102cd2b8], 0
mov edi, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov ebp, dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
mov bl, 0x65
jne 0x100bdf84
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 0x100bdf84
push 0x78
lea eax, [esp + 0x44]
push 0
push eax
mov dword [esp + 0x24], 0xa
call fcn.10100e30
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 0x100bdf84
lea edx, [esp + 0x42]
cmp word [edx], 6
je 0x100bdf77
add ecx, 1
add edx, 0xc
cmp ecx, eax
jb 0x100bdf65
jmp 0x100bdf84
lea eax, [ecx + ecx*2]
mov ecx, dword [esp + eax*4 + 0x48]
mov dword [0x102cd2b8], ecx
cmp dword [0x102cd2c4], 0
jne 0x100be110
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 0x100be110
push 0x320
lea ecx, [esp + 0xbc]
push 0
push ecx
mov dword [esp + 0x40], 0x64
call fcn.10100e30
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 0x100be110
cmp dword [esp + ecx*8 + 0xbc], 1
jne 0x100be0fa
cmp dword [esp + ecx*8 + 0xb8], 0
jne 0x100be103
add ecx, 1
cmp ecx, eax
jb 0x100be0e6
jmp 0x100be110
mov ecx, dword [esp + ecx*8 + 0xb8]
mov dword [0x102cd2c4], ecx
mov eax, dword [0x102cd2b8]
test eax, eax
je 0x100be15d
cmp dword [0x102cd2c4], 0
je 0x100be15d
cmp dword [esp + 0x28], 0
je 0x100be14b
mov edx, dword [0x102ccaa4]
push 0
push edx
push 1
push 0x12345678
push 0
push 0xff
push eax
call fcn.10054db0
add esp, 0x1c
jmp 0x100be15d
push 0x12345678
push 0
push 0xff
push eax
call fcn.10054e30
cmp dword [0x102cd2cc], 0
mov esi, dword [esp + 0x664]
je 0x100be1a9
mov edx, dword [0x102cd2d4]
xor ecx, ecx
lea eax, [edx + edx*4]
lea eax, [eax*4 + 0x102cc878]
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 [0x102cd2d4], edx
jb 0x100be1a9
mov dword [0x102cd2d4], 0
cmp dword [0x101a369c], 0
je 0x100be20d
cmp dword [esp + 0x28], 0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
je 0x100be1ee
mov edx, dword [0x102ccaa4]
push 0
push edx
mov edx, dword [esp + 0x2c]
push 1
push eax
push esi
push ecx
push edx
call fcn.10054db0
mov eax, 1
add esp, 0x1c
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
mov edx, dword [esp + 0x24]
push eax
push esi
push ecx
push edx
call fcn.10054e30
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
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.102cd318]
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 0x100bf93a
cmp edi, 0x838
jne 0x100bebcb
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 0x100be2d6
lea ecx, [edi + 1]
test al, 2
je 0x100be2df
mov edi, 1
test al, 4
je 0x100be2ee
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 0x100bf93a
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 0x100be35d
test ecx, ecx
je 0x100be334
mov esi, 1
mov dword [esp + 0x14], esi
test edi, edi
je 0x100be33f
or esi, 2
mov dword [esp + 0x14], esi
cmp dword [esp + 0x3d8], 0
je 0x100be350
or esi, 0x10
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], 0x200
jmp 0x100be495
cmp ebp, 2
jne 0x100be378
mov esi, 1
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], 0x201
jmp 0x100be495
cmp ebp, 8
jne 0x100be393
mov esi, 1
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], 0x203
jmp 0x100be495
cmp ebp, 3
jne 0x100be3a5
mov dword [esp + 0x10], 0x202
jmp 0x100be495
cmp ebp, 4
jne 0x100be3c0
mov esi, 2
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], 0x204
jmp 0x100be495
cmp ebp, 5
jne 0x100be3d2
mov dword [esp + 0x10], 0x205
jmp 0x100be495
cmp ebp, 6
jne 0x100be3ed
mov esi, 0x10
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], 0x207
jmp 0x100be495
cmp ebp, 7
jne 0x100be3ff
mov dword [esp + 0x10], 0x208
jmp 0x100be495
cmp ebp, 9
jne 0x100be42a
test ecx, ecx
je 0x100be40b
lea esi, [ebp - 8]
test edi, edi
je 0x100be412
or esi, 2
cmp dword [esp + 0x3d8], 0
je 0x100be41f
or esi, 0x10
movzx esi, si
or esi, 0x780000
jmp 0x100be453
cmp ebp, 0xa
jne 0x100be495
test ecx, ecx
je 0x100be436
lea esi, [ebp - 9]
test edi, edi
je 0x100be43d
or esi, 2
cmp dword [esp + 0x3d8], 0
je 0x100be44a
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 [0x102cca9c], 0
jne 0x100be4b1
cmp dword [0x102cca90], 0
jne 0x100be4b1
or esi, 0x8000
mov dword [esp + 0x14], esi
cmp ebp, 1
jne 0x100be54a
mov ecx, dword [esp + 0x20]
movsx esi, word [0x102cca54]
movsx edi, word [0x102cca56]
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 [0x102cca54], edx
mov esi, eax
je 0x100be530
push ebp
push ecx
push 0x37
call fcn.100cdb10
add esp, 0xc
test esi, esi
je 0x100be5de
push 1
push esi
push 0x38
call fcn.100cdb10
add esp, 0xc
jmp 0x100be5de
cmp ebp, 2
je 0x100be5d2
cmp ebp, 8
je 0x100be5d2
cmp ebp, 3
jne 0x100be568
push 1
push 0
call fcn.100cdad0
jmp 0x100be5db
cmp ebp, 4
jne 0x100be573
push 1
push 1
jmp 0x100be5d6
cmp ebp, 5
jne 0x100be583
push 1
push 1
call fcn.100cdad0
jmp 0x100be5db
cmp ebp, 6
jne 0x100be58e
push 1
push 2
jmp 0x100be5d6
cmp ebp, 7
jne 0x100be59e
push 1
push 2
call fcn.100cdad0
jmp 0x100be5db
cmp ebp, 0xa
jne 0x100be5b8
push 1
push 4
call fcn.100cdaa0
push 0xffffffffffffff88
call fcn.100ca070
add esp, 0xc
jmp 0x100be5de
cmp ebp, 9
jne 0x100be5de
push 1
push 5
call fcn.100cdaa0
push 0x78
call fcn.100ca070
add esp, 0xc
jmp 0x100be5de
push 1
push 0
call fcn.100cdaa0
add esp, 8
call fcn.100c0c70
test eax, eax
mov esi, dword [esp + 0x20]
jne 0x100be5f2
push esi
call dword [sym.imp.USER32.dll_SetFocus]
push 0x797a779e
call fcn.100c2680
mov edi, dword [esp + 0x2c]
add esp, 4
test edi, edi
je 0x100be62a
mov eax, dword [0x102ccaa0]
mov ecx, dword [0x102cca54]
push 0
push eax
push 1
push ecx
push 0
push 0x84
push esi
call fcn.10054db0
add esp, 0x1c
jmp 0x100be641
mov edx, dword [0x102cca54]
push edx
push 0
push 0x84
push esi
call fcn.10054d90
add esp, 0x10
cmp ebp, 1
jne 0x100be677
test edi, edi
je 0x100be666
mov eax, dword [0x102ccaa0]
push 0
push eax
push ebp
push 0x2000001
push esi
push 0x20
push esi
call fcn.10054db0
add esp, 0x1c
jmp 0x100be677
push 0x2000001
push esi
push 0x20
push esi
call fcn.10054d90
add esp, 0x10
push 0x326cd5b9
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100bea95
cmp dword [0x102cd2bc], 0
mov edi, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov ebp, dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
mov bl, 0x65
jne 0x100be84f
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 0x100be84f
push 0x78
lea eax, [esp + 0x44]
push 0
push eax
mov dword [esp + 0x24], 0xa
call fcn.10100e30
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 0x100be84f
lea edx, [esp + 0x42]
lea esp, [esp]
cmp word [edx], 2
je 0x100be842
add ecx, 1
add edx, 0xc
cmp ecx, eax
jb 0x100be830
jmp 0x100be84f
lea eax, [ecx + ecx*2]
mov ecx, dword [esp + eax*4 + 0x48]
mov dword [0x102cd2bc], ecx
cmp dword [0x102cd2c0], 0
jne 0x100be9ea
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 0x100be9ea
push 0x320
lea ecx, [esp + 0xbc]
push 0
push ecx
mov dword [esp + 0x3e4], 0x64
call fcn.10100e30
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 0x100be9ea
jmp 0x100be9c0
cmp dword [esp + ecx*8 + 0xbc], 0
jne 0x100be9d4
cmp dword [esp + ecx*8 + 0xb8], 0
jne 0x100be9dd
add ecx, 1
cmp ecx, eax
jb 0x100be9c0
jmp 0x100be9ea
mov ecx, dword [esp + ecx*8 + 0xb8]
mov dword [0x102cd2c0], ecx
mov eax, dword [0x102cd2bc]
test eax, eax
je 0x100bea8f
cmp dword [0x102cd2c0], 0
je 0x100bea8f
cmp dword [esp + 0x28], 0
je 0x100bea5a
mov edx, dword [0x102ccaa0]
push 0
push edx
push 1
push 0x12345679
push 0
push 0xff
push eax
call fcn.10054db0
mov esi, dword [esp + 0x4c]
add esp, 0x1c
cmp esi, 1
jne 0x100bea97
mov eax, dword [0x102ccaa0]
mov ecx, dword [0x102cd2bc]
push 0
push eax
push esi
push 0x12345679
push 0
push 0xff
push ecx
call fcn.10054db0
add esp, 0x1c
jmp 0x100bea97
push 0x12345679
push 0
push 0xff
push eax
call fcn.10054e30
mov esi, dword [esp + 0x30]
cmp esi, 1
jne 0x100bea97
mov edx, dword [0x102cd2bc]
push 0x12345679
push 0
push 0xff
push edx
call fcn.10054e30
jmp 0x100bea97
mov esi, dword [esp + 0x30]
jmp 0x100bea97
mov esi, ebp
cmp dword [0x102cd2d0], 0
mov edi, dword [esp + 0x10]
je 0x100beb3a
cmp edi, 0x203
je 0x100beb3a
cmp edi, 0x207
je 0x100beb3a
cmp edi, 0x208
je 0x100beb3a
mov eax, dword [0x102cd2dc]
xor ecx, ecx
cmp edi, 0x20a
lea eax, [eax + eax*2]
lea eax, [eax*8 + 0x102cc940]
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 0x100beb10
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 [0x102cd2dc]
add eax, 1
cmp eax, 0xa
mov dword [0x102cd2dc], eax
jb 0x100beb3e
mov dword [0x102cd2dc], 0
jmp 0x100beb3e
mov esi, dword [esp + 0x20]
cmp dword [0x101a36a0], 0
je 0x100beba2
cmp dword [esp + 0x28], 0
je 0x100beb7f
mov edx, dword [0x102ccaa0]
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.10054db0
mov eax, 1
add esp, 0x1c
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x14]
push edx
push eax
push edi
push esi
call fcn.10054e30
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x14]
push ecx
and eax, 0xffff7fff
push eax
push edi
push esi
call dword [fcn.102cd318]
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x83a
jne 0x100bebfb
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov eax, 1
mov dword [0x101a368c], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x83d
jne 0x100bec3b
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov edx, ebx
shr edx, 0x10
movsx eax, dx
movsx ecx, bx
push eax
push ecx
call fcn.100ca050
mov eax, 1
add esp, 8
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x83f
jne 0x100bec7d
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov edx, ebx
and edx, 0x7fffffff
mov eax, 1
shr ebx, 0x1f
mov dword [0x102cca6c], edx
mov dword [0x102cca68], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x863
jne 0x100becbb
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
fild dword [esp + 0x664]
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
fdiv qword [0x1016ba98]
fstp qword [0x101a36a8]
jmp 0x100bf93a
cmp edi, 0x842
jne 0x100bed3a
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
push 0x16cc25d5
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100bed25
call fcn.100ca210
mov esi, eax
push esi
call fcn.100441e0
mov edi, eax
push ebx
push edi
call fcn.10043f10
add esp, 0xc
test esi, esi
mov dword [esp + 0x10], eax
je 0x100bed0d
push esi
call dword [sym.imp.USER32.dll_DestroyCursor]
test edi, edi
je 0x100bed2d
push edi
call dword [sym.imp.GDI32.dll_DeleteObject]
mov dword [esp + 0x14], 1
jmp 0x100bf93a
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 1
jmp 0x100bf93a
cmp edi, 0x843
jne 0x100bedf1
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
push 0x16cc25d5
call fcn.100c2680
add esp, 4
test eax, eax
je 0x100beddc
call fcn.100ca210
mov esi, eax
test esi, esi
mov edi, 0xffff
mov ebp, edi
je 0x100bedc0
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 0x100bed9d
push eax
call edi
mov eax, dword [esp + 0x3f0]
test eax, eax
je 0x100bedab
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 0x100bf93a
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0x14], 1
jmp 0x100bf93a
cmp edi, 0x844
jne 0x100bee4c
cmp dword [esp + 0x660], 0x1234
jne 0x100bee37
mov eax, dword [0x102cca7c]
cmp eax, 0x1000
jge 0x100bee37
lea ecx, [eax + 1]
mov dword [esp + 0x10], ecx
mov dword [eax*4 + 0x102c8858], 1
mov dword [0x102cca7c], ecx
mov dword [esp + 0x14], 1
jmp 0x100bf93a
mov dword [esp + 0x10], 0x1388
mov dword [esp + 0x14], 1
jmp 0x100bf93a
cmp edi, 0x845
jne 0x100bee8d
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
lea edx, [ebx - 1]
cmp edx, 0xfff
ja 0x100bcb16
mov eax, 1
mov dword [ebx*4 + fcn.102c8854], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x846
jne 0x100bef80
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
cmp ebx, ecx
mov eax, 1
jne 0x100beed2
mov dword [0x102cca88], ecx
mov dword [0x102cd2c8], ecx
mov dword [0x102cca84], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp ebx, eax
jne 0x100beef3
mov dword [0x102cca84], eax
mov dword [0x102cca88], eax
mov dword [0x102cd2c8], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp ebx, 2
jne 0x100bef16
mov dword [0x102cca84], eax
mov dword [0x102cca88], ecx
mov dword [0x102cd2c8], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp ebx, 3
jne 0x100bef39
mov dword [0x102cd2c8], ecx
mov dword [0x102cca88], eax
mov dword [0x102cca84], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp ebx, 4
jne 0x100bef5a
mov dword [0x102cca84], eax
mov dword [0x102cca88], eax
mov dword [0x102cd2c8], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp ebx, 5
jne 0x100bcb1b
mov dword [0x102cd2c8], eax
mov dword [0x102cca88], eax
mov dword [0x102cca84], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x850
jne 0x100befb1
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov eax, 1
mov dword [0x102cca8c], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x851
jne 0x100befe0
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov eax, dword [0x102cca54]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
jmp 0x100bf93a
cmp edi, 0x852
jne 0x100bf011
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov eax, 1
mov dword [0x101a369c], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x853
jne 0x100bf042
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov eax, 1
mov dword [0x101a36a0], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x84d
jne 0x100bf073
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov eax, 1
mov dword [0x102cca90], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x84f
jne 0x100bf61f
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
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 0x100bf383
lea ecx, [esp + 0x3d8]
push ecx
call dword [sym.imp.KERNEL32.DLL_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x100bcb16
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 [0x102cca60]
push eax
call ebp
mov edi, eax
push edi
call dword [esp + 0x1c]
test eax, eax
jne 0x100bf360
push 1
push edi
call dword [esp + 0x30]
mov ecx, dword [0x102cca60]
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 0x100bf93a
lea edx, [esp + 0x3d8]
push edx
call dword [sym.imp.KERNEL32.DLL_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x100bcb16
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 [0x102cca60]
push ecx
mov ebx, eax
call ebp
mov edi, eax
push edi
call dword [esp + 0x1c]
test eax, eax
je 0x100bf5fc
push 0
push edi
call dword [esp + 0x30]
mov edx, dword [0x102cca60]
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 0x100bf93a
cmp edi, 0x847
jne 0x100bf650
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov eax, 1
mov dword [0x102cca94], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x848
jne 0x100bf681
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov eax, 1
mov dword [0x102cca98], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x840
jne 0x100bf6ac
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x841
jne 0x100bf6d7
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x849
jne 0x100bf70f
mov eax, dword [esp + 0x660]
cmp eax, ecx
je 0x100bf6ef
mov dword [0x102ccaa4], eax
cmp ebx, ecx
je 0x100bcb16
mov eax, 1
mov dword [0x102ccaa0], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x84a
jne 0x100bf7fd
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
cmp ebx, ecx
je 0x100bf7e5
push 0xff
lea eax, [esp + 0x555]
push 0
push eax
mov byte [0x102ccab0], 0
mov byte [esp + 0x55c], 0
call fcn.10100e30
mov ecx, dword [esp + 0x24]
add esp, 0xc
push ecx
push 3
call fcn.100db890
add esp, 4
push eax
lea edx, [esp + 0x558]
push edx
call fcn.10101c10
add esp, 0xc
lea eax, [esp + 0x550]
push eax
push 0
push 0xf001f
call fcn.100b1f70
mov edi, eax
test edi, edi
je 0x100bf7c9
push 0
push 0
push 0
push 6
push edi
call fcn.100b1f20
mov esi, 0x102ccab0
mov ecx, eax
sub esi, eax
jmp 0x100bf7b0
mov dl, byte [ecx]
mov byte [ecx + esi], dl
add ecx, 1
test dl, dl
jne 0x100bf7b0
push eax
call fcn.100b1f50
push edi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
mov eax, 1
mov dword [0x102ccaa8], 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
mov eax, 1
mov dword [0x102ccaa8], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
jmp 0x100bf93a
cmp edi, 0x84b
jne 0x100bf835
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
xor edx, edx
cmp ebx, ecx
setne dl
mov eax, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov dword [0x101a3698], edx
jmp 0x100bf93a
cmp edi, 0x854
jne 0x100bf864
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov eax, dword [0x102cca70]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
jmp 0x100bf93a
cmp edi, 0x869
jne 0x100bf88e
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], 1
jmp 0x100bf93a
cmp edi, 0x84c
jne 0x100bf93a
cmp dword [esp + 0x660], 0x1234
jne 0x100bf93a
mov esi, 1
push esi
mov dword [0x101a3698], 0
call fcn.100c3ba0
add esp, 4
mov dword [0x101a3698], esi
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], esi
jmp 0x100bf93a
cmp dword [0x102cca60], ecx
je 0x100bf93a
push 0x592629e2
call fcn.100c2680
add esp, 4
test eax, eax
jne 0x100bf8f4
cmp dword [0x102cca84], eax
je 0x100bf917
cmp dword [0x102cca9c], 0
jne 0x100bf917
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 0x100bc965
movsx eax, bx
shr ebx, 0x10
cmp dword [0x102cca94], 0
movsx ecx, bx
jne 0x100bf93a
movzx ecx, cx
movzx edx, ax
shl ecx, 0x10
or ecx, edx
mov dword [0x102cca54], ecx
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100bf953
push eax
call fcn.100b1f50
mov eax, dword [esp + 0x3c]
push eax
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
cmp dword [esp + 0x14], 1
jne 0x100bf963
mov eax, dword [esp + 0x10]
jmp 0x100bc965
mov eax, dword [fcn.102cd318]
test eax, eax
mov ecx, dword [esp + 0x668]
je 0x100bf99b
test ecx, ecx
jne 0x100bf99b
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 0x100bc965
mov eax, dword [0x102cd324]
test eax, eax
je 0x100bc963
test ecx, ecx
je 0x100bc963
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 0x100bc965