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

Disassembly:
sub esp, 0x530
mov eax, dword [0x10032644]
xor eax, esp
mov dword [esp + 0x52c], eax
mov eax, dword [esp + 0x534]
push ebx
mov ebx, dword [esp + 0x544]
push ebp
push esi
xor esi, esi
push edi
mov edi, dword [esp + 0x548]
xor ebp, ebp
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], esi
mov dword [esp + 0x34], ebp
mov dword [esp + 0x3c], esi
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
cmp edi, 0x7e9
mov dword [esp + 0x18], eax
jne 0x10003e33
cmp dword [esp + 0x54c], 0x1234
jne 0x10003e33
push ebp
call fcn.10002d90
mov esi, eax
add esp, 4
test esi, esi
mov dword [esp + 0x3c], esi
je 0x10003e14
push ebp
push esi
call fcn.10002e30
mov ebp, eax
add esp, 8
test ebp, ebp
mov dword [esp + 0x34], ebp
jne 0x10003e31
push esi
call fcn.10001ed0
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x53c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.1001a846
add esp, 0x530
ret 0x14
xor esi, esi
call fcn.1000b620
cmp eax, esi
jbe 0x10003f1a
cmp eax, 1
jne 0x10003e4f
call fcn.1000f360
jmp 0x10003f0d
cmp eax, 2
jne 0x10003e5e
call fcn.1000f260
jmp 0x10003f0d
cmp eax, 3
jne 0x10003e6d
call fcn.1000f2e0
jmp 0x10003f0d
cmp eax, 4
jne 0x10003e7c
call fcn.10014530
jmp 0x10003f0d
cmp eax, 5
jne 0x10003e8b
call fcn.10014580
jmp 0x10003f0d
cmp eax, 6
jne 0x10003e97
call fcn.10013230
jmp 0x10003f0d
cmp eax, 7
jne 0x10003ea3
call fcn.10013280
jmp 0x10003f0d
cmp eax, 8
jne 0x10003eaf
call fcn.100111c0
jmp 0x10003f0d
cmp eax, 9
jne 0x10003ebb
call fcn.100145d0
jmp 0x10003f0d
cmp eax, 0xa
jne 0x10003ec7
call fcn.10014620
jmp 0x10003f0d
cmp eax, 0xb
jne 0x10003ed3
call fcn.100132d0
jmp 0x10003f0d
cmp eax, 0xc
jne 0x10003edf
call fcn.10013320
jmp 0x10003f0d
cmp eax, 0xd
jne 0x10003eeb
call fcn.100116b0
jmp 0x10003f0d
cmp eax, 0xe
jne 0x10003ef7
call fcn.10011730
jmp 0x10003f0d
cmp eax, 0xf
jne 0x10003f03
call fcn.1000f3f0
jmp 0x10003f0d
cmp eax, 0x10
jne 0x10003f0d
call fcn.1000f490
call fcn.1000b620
cmp eax, esi
ja 0x10003e40
mov eax, dword [0x10031010]
mov esi, eax
test esi, esi
jne 0x10003f58
cmp dword [0x10031014], eax
je 0x10003f58
cmp edi, 6
je 0x10003f53
cmp edi, 0x1c
je 0x10003f53
cmp edi, 0x86
je 0x10003f53
cmp edi, 8
je 0x10003f53
cmp edi, 0x46
je 0x10003f53
cmp edi, 0x47
je 0x10003f53
cmp edi, 0x18
jne 0x10003f58
mov esi, 1
test eax, eax
jne 0x10003f95
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
sub ecx, dword [0x100384fc]
cmp ecx, 0xbb8
jb 0x10003f95
push 1
mov dword [0x100384fc], eax
mov dword [0x10031018], 0
call fcn.1000bae0
add esp, 4
mov dword [0x10031018], 1
call fcn.10009fb0
cmp edi, 0x8b0
jb 0x10003fd8
cmp edi, 0x8ba
jae 0x10003fe0
mov edx, dword [esp + 0x54c]
mov eax, dword [esp + 0x20]
push ebx
push edx
push eax
push edi
call fcn.10017550
test eax, eax
je 0x10006dea
mov eax, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x8ba
jb 0x10003ffe
cmp edi, 0x8bf
jae 0x10003ffe
mov ecx, dword [esp + 0x54c]
mov edx, dword [esp + 0x20]
push ebx
push ecx
push edx
push edi
call fcn.10016490
jmp 0x10003fbe
xor ecx, ecx
cmp esi, ecx
jne 0x10004049
cmp edi, 0x84e
jne 0x10006dea
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov eax, 1
mov ecx, ebx
and ecx, eax
and ebx, 0x8000
mov dword [0x10031010], ecx
mov dword [0x10031014], ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x84e
jne 0x1000408a
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov eax, 1
mov edx, ebx
and edx, eax
and ebx, 0x8000
mov dword [0x10031010], edx
mov dword [0x10031014], ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 6
jne 0x100040cb
push 0x596235d2
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x10006dea
cmp dword [0x10037ce4], 0
jne 0x10006dea
mov eax, dword [esp + 0x54c]
mov ecx, dword [esp + 0x20]
push ebx
push eax
push edi
push ecx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x10003e16
cmp edi, 0x1c
jne 0x1000410c
push 0x596235d2
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x10006dea
cmp dword [0x10037ce4], 0
jne 0x10006dea
mov edx, dword [esp + 0x54c]
mov eax, dword [esp + 0x20]
push ebx
push edx
push edi
push eax
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x10003e16
cmp edi, 0x86
jne 0x1000413b
push 0x596235d2
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x10006dea
cmp dword [0x10037ce4], 0
jne 0x10006dea
jmp 0x10003e14
cmp edi, 8
jne 0x1000417c
push 0x596235d2
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x10006dea
cmp dword [0x10037ce4], 0
jne 0x10006dea
mov ecx, dword [esp + 0x54c]
mov edx, dword [esp + 0x20]
push ebx
push ecx
push edi
push edx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x10003e16
cmp edi, 0x46
jne 0x100041bd
push 0x596235d2
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x10006dea
cmp dword [0x10037ce4], 0
jne 0x10006dea
mov eax, dword [esp + 0x54c]
mov ecx, dword [esp + 0x20]
push ebx
push eax
push edi
push ecx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x10003e16
cmp edi, 0x47
jne 0x100041fe
push 0x596235d2
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x10006dea
cmp dword [0x10037ce4], 0
jne 0x10006dea
mov edx, dword [esp + 0x54c]
mov eax, dword [esp + 0x20]
push ebx
push edx
push edi
push eax
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x10003e16
cmp edi, 0x18
jne 0x1000423f
push 0x596235d2
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x10006dea
cmp dword [0x10037ce4], 0
jne 0x10006dea
mov ecx, dword [esp + 0x54c]
mov edx, dword [esp + 0x20]
push ebx
push ecx
push edi
push edx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x10003e16
cmp edi, 0x215
jne 0x10004251
push 0x7fae1452
jmp 0x10004119
cmp edi, 0x84
jne 0x1000437d
mov edi, dword [esp + 0x20]
lea ecx, [esp + 0x404]
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 + 0x40c]
xor eax, eax
lea ecx, [esp + 0x18]
push ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x414]
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 0x1000435f
cmp esi, dword [esp + 0x28]
jge 0x1000435f
cmp ebp, dword [esp + 0x1c]
jl 0x1000435f
cmp ebp, dword [esp + 0x2c]
jge 0x1000435f
push 0x592629e2
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x100042f6
cmp dword [0x10037ccc], eax
je 0x1000430e
cmp dword [0x10037ce4], 0
jne 0x1000430e
mov ebx, dword [0x10037c9c]
mov dword [esp + 0x550], ebx
jmp 0x1000431f
movzx ecx, bp
movzx edx, si
shl ecx, 0x10
or ecx, edx
mov dword [0x10037c9c], ecx
push 0x5e1c1dfb
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x10006dea
cmp dword [0x10037ce4], 0
jne 0x10006dea
mov eax, dword [esp + 0x54c]
mov ecx, dword [esp + 0x20]
push ebx
push eax
push 0x84
push ecx
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x10003e16
mov edx, dword [esp + 0x54c]
mov eax, dword [esp + 0x20]
push ebx
push edx
push 0x84
push eax
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x10003e16
cmp edi, 0xa0
je 0x10006d80
cmp edi, 0xa1
je 0x10006d80
cmp edi, 0xa2
je 0x10006d80
cmp edi, 0xa3
je 0x10006d80
cmp edi, 0xa4
je 0x10006d80
cmp edi, 0xa5
je 0x10006d80
cmp edi, 0xa6
je 0x10006d80
cmp edi, 0xa7
je 0x10006d80
cmp edi, 0xa8
je 0x10006d80
cmp edi, 0xa9
je 0x10006d80
cmp edi, 0x200
jne 0x100044c3
mov ecx, dword [0x10037ca8]
add ecx, 0xffffffec
mov edi, 0x8000
je 0x10004483
push 0x592629e2
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x1000442a
cmp dword [0x10037ccc], eax
je 0x10004440
cmp dword [0x10037ce4], 0
jne 0x10004440
test dword [esp + 0x54c], edi
je 0x10003e14
movsx edx, bx
mov dword [esp + 0x18], edx
mov edx, dword [0x10037ca8]
shr ebx, 0x10
lea ecx, [esp + 0x18]
movsx eax, bx
push ecx
add edx, 0xffffffec
push edx
mov dword [esp + 0x24], eax
call dword [sym.imp.USER32.dll_ClientToScreen]
cmp dword [0x10037cdc], 0
jne 0x10004483
movzx eax, word [esp + 0x1c]
movzx ecx, word [esp + 0x18]
shl eax, 0x10
or eax, ecx
mov dword [0x10037c9c], eax
test dword [esp + 0x54c], edi
jne 0x100044a6
push 0
call fcn.10011ea0
add esp, 4
test eax, eax
jne 0x100044a6
cmp dword [0x10037cdc], eax
je 0x10003e14
and dword [esp + 0x54c], 0xffff7fff
push 0x200
call fcn.100015f0
add esp, 4
jmp 0x10006dea
cmp edi, 0x201
jne 0x100045c9
mov edx, dword [0x10037ca8]
add edx, 0xffffffec
mov edi, 0x8000
je 0x10004589
push 0x5e1c1dfb
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x100044fc
cmp dword [0x10037ccc], eax
je 0x10004512
cmp dword [0x10037ce4], 0
jne 0x10004512
test dword [esp + 0x54c], edi
je 0x10003e14
push 0x592629e2
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x1000452b
cmp dword [0x10037ccc], eax
je 0x10004574
cmp dword [0x10037ce4], 0
jne 0x10004574
mov eax, dword [0x10037c9c]
movsx ecx, ax
shr eax, 0x10
mov dword [esp + 0x18], ecx
mov ecx, dword [0x10037ca8]
movsx edx, ax
lea eax, [esp + 0x18]
push eax
add ecx, 0xffffffec
push ecx
mov dword [esp + 0x24], edx
call fcn.10009340
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x550], eax
test dword [esp + 0x54c], edi
jne 0x100045ac
push 0
push 0
call fcn.10014bf0
add esp, 8
test dword [esp + 0x54c], edi
jne 0x100045ac
push 0
call fcn.10011ea0
add esp, 4
test eax, eax
jne 0x100045ac
cmp dword [0x10037cdc], eax
je 0x10003e14
and dword [esp + 0x54c], 0xffff7fff
push 0x201
call fcn.100015f0
add esp, 4
jmp 0x10006dea
cmp edi, 0x202
jne 0x100046ce
mov eax, dword [0x10037ca8]
add eax, 0xffffffec
mov edi, 0x8000
je 0x1000468e
push 0x5e1c1dfb
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10004601
cmp dword [0x10037ccc], eax
je 0x10004617
cmp dword [0x10037ce4], 0
jne 0x10004617
test dword [esp + 0x54c], edi
je 0x10003e14
push 0x592629e2
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10004630
cmp dword [0x10037ccc], eax
je 0x10004679
cmp dword [0x10037ce4], 0
jne 0x10004679
mov eax, dword [0x10037c9c]
movsx ecx, ax
shr eax, 0x10
mov dword [esp + 0x18], ecx
mov ecx, dword [0x10037ca8]
movsx edx, ax
lea eax, [esp + 0x18]
push eax
add ecx, 0xffffffec
push ecx
mov dword [esp + 0x24], edx
call fcn.10009340
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x550], eax
test dword [esp + 0x54c], edi
jne 0x100046b1
push 0
push 0
call fcn.10014c20
add esp, 8
test dword [esp + 0x54c], edi
jne 0x100046b1
push 0
call fcn.10011ea0
add esp, 4
test eax, eax
jne 0x100046b1
cmp dword [0x10037cdc], eax
je 0x10003e14
and dword [esp + 0x54c], 0xffff7fff
push 0x202
call fcn.100015f0
add esp, 4
jmp 0x10006dea
cmp edi, 0x203
jne 0x100047b1
mov eax, dword [0x10037ca8]
add eax, 0xffffffec
mov edi, 0x8000
je 0x1000477e
push 0x5e1c1dfb
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10004706
cmp dword [0x10037ccc], eax
je 0x1000471c
cmp dword [0x10037ce4], 0
jne 0x1000471c
test dword [esp + 0x54c], edi
je 0x10003e14
push 0x592629e2
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10004735
cmp dword [0x10037ccc], eax
je 0x1000477e
cmp dword [0x10037ce4], 0
jne 0x1000477e
mov eax, dword [0x10037c9c]
movsx ecx, ax
shr eax, 0x10
mov dword [esp + 0x18], ecx
mov ecx, dword [0x10037ca8]
movsx edx, ax
lea eax, [esp + 0x18]
push eax
add ecx, 0xffffffec
push ecx
mov dword [esp + 0x24], edx
call fcn.10009340
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x550], eax
test dword [esp + 0x54c], edi
jne 0x100047a1
push 0
call fcn.10011ea0
add esp, 4
test eax, eax
jne 0x100047a1
cmp dword [0x10037cdc], eax
je 0x10003e14
and dword [esp + 0x54c], 0xffff7fff
jmp 0x10006dea
cmp edi, 0x204
jne 0x100048b6
mov eax, dword [0x10037ca8]
add eax, 0xffffffec
mov edi, 0x8000
je 0x10004876
push 0x5e1c1dfb
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x100047e9
cmp dword [0x10037ccc], eax
je 0x100047ff
cmp dword [0x10037ce4], 0
jne 0x100047ff
test dword [esp + 0x54c], edi
je 0x10003e14
push 0x592629e2
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10004818
cmp dword [0x10037ccc], eax
je 0x10004861
cmp dword [0x10037ce4], 0
jne 0x10004861
mov eax, dword [0x10037c9c]
movsx ecx, ax
shr eax, 0x10
mov dword [esp + 0x18], ecx
mov ecx, dword [0x10037ca8]
movsx edx, ax
lea eax, [esp + 0x18]
push eax
add ecx, 0xffffffec
push ecx
mov dword [esp + 0x24], edx
call fcn.10009340
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x550], eax
test dword [esp + 0x54c], edi
jne 0x10004899
push 0
push 1
call fcn.10014bf0
add esp, 8
test dword [esp + 0x54c], edi
jne 0x10004899
push 0
call fcn.10011ea0
add esp, 4
test eax, eax
jne 0x10004899
cmp dword [0x10037cdc], eax
je 0x10003e14
and dword [esp + 0x54c], 0xffff7fff
push 0x204
call fcn.100015f0
add esp, 4
jmp 0x10006dea
cmp edi, 0x205
jne 0x100049bb
mov eax, dword [0x10037ca8]
add eax, 0xffffffec
mov edi, 0x8000
je 0x1000497b
push 0x5e1c1dfb
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x100048ee
cmp dword [0x10037ccc], eax
je 0x10004904
cmp dword [0x10037ce4], 0
jne 0x10004904
test dword [esp + 0x54c], edi
je 0x10003e14
push 0x592629e2
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x1000491d
cmp dword [0x10037ccc], eax
je 0x10004966
cmp dword [0x10037ce4], 0
jne 0x10004966
mov eax, dword [0x10037c9c]
movsx ecx, ax
shr eax, 0x10
mov dword [esp + 0x18], ecx
mov ecx, dword [0x10037ca8]
movsx edx, ax
lea eax, [esp + 0x18]
push eax
add ecx, 0xffffffec
push ecx
mov dword [esp + 0x24], edx
call fcn.10009340
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x550], eax
test dword [esp + 0x54c], edi
jne 0x1000499e
push 0
push 1
call fcn.10014c20
add esp, 8
test dword [esp + 0x54c], edi
jne 0x1000499e
push 0
call fcn.10011ea0
add esp, 4
test eax, eax
jne 0x1000499e
cmp dword [0x10037cdc], eax
je 0x10003e14
and dword [esp + 0x54c], 0xffff7fff
push 0x205
call fcn.100015f0
add esp, 4
jmp 0x10006dea
cmp edi, 0x207
jne 0x10004a89
mov eax, dword [0x10037ca8]
add eax, 0xffffffec
mov edi, 0x8000
je 0x1000477e
push 0x5e1c1dfb
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x100049f3
cmp dword [0x10037ccc], eax
je 0x10004a09
cmp dword [0x10037ce4], 0
jne 0x10004a09
test dword [esp + 0x54c], edi
je 0x10003e14
push 0x592629e2
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10004a22
cmp dword [0x10037ccc], eax
je 0x10004a6b
cmp dword [0x10037ce4], 0
jne 0x10004a6b
mov eax, dword [0x10037c9c]
movsx ecx, ax
shr eax, 0x10
mov dword [esp + 0x18], ecx
mov ecx, dword [0x10037ca8]
movsx edx, ax
lea eax, [esp + 0x18]
push eax
add ecx, 0xffffffec
push ecx
mov dword [esp + 0x24], edx
call fcn.10009340
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x550], eax
test dword [esp + 0x54c], edi
jne 0x100047a1
push 0
push 2
call fcn.10014bf0
add esp, 8
jmp 0x1000477e
cmp edi, 0x208
jne 0x10004b57
mov eax, dword [0x10037ca8]
add eax, 0xffffffec
mov edi, 0x8000
je 0x1000477e
push 0x5e1c1dfb
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10004ac1
cmp dword [0x10037ccc], eax
je 0x10004ad7
cmp dword [0x10037ce4], 0
jne 0x10004ad7
test dword [esp + 0x54c], edi
je 0x10003e14
push 0x592629e2
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10004af0
cmp dword [0x10037ccc], eax
je 0x10004b39
cmp dword [0x10037ce4], 0
jne 0x10004b39
mov eax, dword [0x10037c9c]
movsx ecx, ax
shr eax, 0x10
mov dword [esp + 0x18], ecx
mov ecx, dword [0x10037ca8]
movsx edx, ax
lea eax, [esp + 0x18]
push eax
add ecx, 0xffffffec
push ecx
mov dword [esp + 0x24], edx
call fcn.10009340
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x550], eax
test dword [esp + 0x54c], edi
jne 0x100047a1
push 0
push 2
call fcn.10014c20
add esp, 8
jmp 0x1000477e
cmp edi, 0x20a
jne 0x10004c23
mov eax, dword [0x10037ca8]
add eax, 0xffffffec
mov edi, 0x8000
je 0x10004be3
push 0x5e1c1dfb
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10004b8b
cmp dword [0x10037ccc], eax
je 0x10004ba1
cmp dword [0x10037ce4], 0
jne 0x10004ba1
test dword [esp + 0x54c], edi
je 0x10003e14
push 0x592629e2
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10004bba
cmp dword [0x10037ccc], eax
je 0x10004be3
cmp dword [0x10037ce4], 0
jne 0x10004be3
mov eax, dword [0x10037c9c]
movsx ecx, ax
shr eax, 0x10
movsx eax, ax
movzx eax, ax
movzx ecx, cx
shl eax, 0x10
or eax, ecx
mov dword [esp + 0x550], eax
test dword [esp + 0x54c], edi
jne 0x10004c06
push 0
call fcn.10011ea0
add esp, 4
test eax, eax
jne 0x10004c06
cmp dword [0x10037cdc], eax
je 0x10003e14
and dword [esp + 0x54c], 0xffff7fff
push 0x20a
call fcn.100015f0
add esp, 4
jmp 0x10006dea
cmp edi, 0x2a3
jne 0x10004cc3
mov edx, dword [0x10037ca8]
add edx, 0xffffffec
je 0x10006dea
push 0x592629e2
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10004c5b
cmp dword [0x10037ccc], eax
je 0x10006dea
cmp dword [0x10037ce4], 0
jne 0x10006dea
mov eax, dword [0x10037c9c]
movsx ecx, ax
shr eax, 0x10
mov dword [esp + 0x18], ecx
mov ecx, dword [0x10037ca8]
movsx edx, ax
lea eax, [esp + 0x18]
push eax
add ecx, 0xffffffec
push ecx
mov dword [esp + 0x550], 0x2a1
mov dword [esp + 0x554], 0
mov dword [esp + 0x24], edx
call fcn.10009340
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x550], eax
jmp 0x10006dea
cmp edi, 0x2a2
jne 0x10004d62
mov eax, dword [0x10037ca8]
add eax, 0xffffffec
je 0x10006dea
push 0x592629e2
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10004cfa
cmp dword [0x10037ccc], eax
je 0x10006dea
cmp dword [0x10037ce4], 0
jne 0x10006dea
mov eax, dword [0x10037c9c]
movsx ecx, ax
shr eax, 0x10
mov dword [esp + 0x18], ecx
mov ecx, dword [0x10037ca8]
movsx edx, ax
lea eax, [esp + 0x18]
push eax
add ecx, 0xffffffec
push ecx
mov dword [esp + 0x550], 0x2a1
mov dword [esp + 0x554], 0
mov dword [esp + 0x24], edx
call fcn.10009340
movzx eax, word [esp + 0x1c]
movzx edx, word [esp + 0x18]
shl eax, 0x10
or eax, edx
mov dword [esp + 0x550], eax
jmp 0x10006dea
cmp edi, 0x100
jne 0x10004da3
test ebx, 0x4000000
jne 0x10004d84
push 1
call fcn.10011ea0
add esp, 4
test eax, eax
je 0x10003e14
and ebx, 0xfbffffff
push 0x100
mov dword [esp + 0x554], ebx
call fcn.10001570
add esp, 4
jmp 0x10006dea
cmp edi, 0x101
jne 0x10004de4
test ebx, 0x4000000
jne 0x10004dc5
push 1
call fcn.10011ea0
add esp, 4
test eax, eax
je 0x10003e14
and ebx, 0xfbffffff
push 0x101
mov dword [esp + 0x554], ebx
call fcn.10001570
add esp, 4
jmp 0x10006dea
cmp edi, 0x104
jne 0x10004e25
test ebx, 0x4000000
jne 0x10004e06
push 1
call fcn.10011ea0
add esp, 4
test eax, eax
je 0x10003e14
and ebx, 0xfbffffff
push 0x104
mov dword [esp + 0x554], ebx
call fcn.10001570
add esp, 4
jmp 0x10006dea
cmp edi, 0x105
jne 0x10004e66
test ebx, 0x4000000
jne 0x10004e47
push 1
call fcn.10011ea0
add esp, 4
test eax, eax
je 0x10003e14
and ebx, 0xfbffffff
push 0x105
mov dword [esp + 0x554], ebx
call fcn.10001570
add esp, 4
jmp 0x10006dea
cmp edi, 0x106
jne 0x10004e9a
test ebx, 0x4000000
jne 0x10004e88
push 1
call fcn.10011ea0
add esp, 4
test eax, eax
je 0x10003e14
and ebx, 0xfbffffff
mov dword [esp + 0x550], ebx
jmp 0x10006dea
cmp edi, 0x102
jne 0x10004f21
mov al, byte [esp + 0x54c]
cmp al, 0x76
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
mov edi, 0x8000
je 0x10004ebc
cmp al, 0x56
jne 0x10004ec9
push 0x11
call esi
test di, ax
jne 0x10003e14
cmp dword [0x10038510], 0
je 0x10004eec
test ebx, 0x4000000
jne 0x10004eec
push 1
call fcn.10011ea0
add esp, 4
test eax, eax
je 0x10003e14
push 0x10
call esi
test di, ax
je 0x10004f0f
mov eax, dword [esp + 0x54c]
push eax
call fcn.10011990
movsx ecx, al
add esp, 4
mov dword [esp + 0x54c], ecx
and ebx, 0xfbffffff
mov dword [esp + 0x550], ebx
jmp 0x10006dea
cmp edi, 0x7e9
jne 0x100050ae
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
call fcn.100033e0
xor esi, esi
cmp dword [ebp + 0x1000424], esi
jbe 0x10004f6c
lea edi, [ebp + 0x1000024]
push edi
mov ecx, 0x100385b4
call fcn.10003d10
add esi, 1
add edi, 4
cmp esi, dword [ebp + 0x1000424]
jb 0x10004f53
push 0x400
lea edx, [ebp + 0x1000024]
push 0
push edx
call fcn.1001a890
push ebp
call fcn.1000edf0
add esp, 0x10
test eax, eax
je 0x10004fe3
push ebp
call fcn.10011090
add esp, 4
test eax, eax
je 0x10004fe3
push ebp
call fcn.1000e830
add esp, 4
test eax, eax
je 0x10004fe3
push ebp
call fcn.1000a540
add esp, 4
test eax, eax
je 0x10004fe3
push ebp
call fcn.10011f50
add esp, 4
test eax, eax
je 0x10004fe3
push ebp
call fcn.1000ec60
add esp, 4
test eax, eax
je 0x10004fe3
push ebp
call fcn.100114d0
add esp, 4
test eax, eax
je 0x10004fe3
mov ebx, 1
mov ebp, ebx
jmp 0x10004fe8
xor ebp, ebp
lea ebx, [ebp + 1]
push 0x3f1c98f9
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x10004fff
call dword [sym.imp.USER32.dll_ReleaseCapture]
push 0x6a5a450a
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x10005016
mov dword [0x10037cf4], ebx
push 0x7d877e7a
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x1000502d
mov dword [0x100384f8], ebx
mov eax, dword [esp + 0x34]
lea esi, [eax + 0x1000480]
mov ecx, 0x18
mov edi, 0x10037a20
rep movsd dword es:[edi], dword [esi]
lea esi, [eax + 0x10004e0]
mov ecx, 0x18
mov edi, 0x10037c38
rep movsd dword es:[edi], dword [esi]
call fcn.10001510
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
xor esi, esi
cmp ebp, esi
mov dword [0x1003855c], eax
mov dword [0x10031018], esi
je 0x10005082
push esi
call fcn.1000bae0
add esp, 4
test eax, eax
mov dword [esp + 0x14], ebx
jne 0x10005086
mov dword [esp + 0x14], esi
push 0x4000
push esi
push 0x10033a20
mov dword [0x10031018], ebx
mov dword [esp + 0x1c], ebx
call fcn.1001a890
add esp, 0xc
mov dword [0x10037cc4], esi
jmp 0x10006dea
cmp edi, 0x7ea
jne 0x100050e1
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov eax, dword [esp + 0x20]
push eax
call fcn.10003620
add esp, 4
mov dword [esp + 0x10], 1
jmp 0x10006dea
cmp edi, 0x837
jne 0x1000576b
mov ebx, dword [esp + 0x54c]
mov esi, ebx
mov eax, ebx
and eax, 0x80
shr esi, 0x10
xor ebp, ebp
and ebx, 0x40
test byte [esp + 0x54c], 1
mov dword [esp + 0x28], eax
je 0x10005118
mov ebp, 1
cmp esi, 2
ja 0x10006dea
cmp dword [esp + 0x550], 0
jl 0x10006dea
cmp dword [esp + 0x550], 0xff
jg 0x10006dea
mov ecx, dword [esp + 0x550]
push 0
push ecx
call dword [sym.imp.USER32.dll_MapVirtualKeyA]
mov edx, dword [esp + 0x550]
mov edi, eax
shl edi, 0x10
or edi, 1
push edx
mov dword [esp + 0x34], eax
mov dword [esp + 0x14], edi
call fcn.10001370
add esp, 4
test eax, eax
je 0x1000517e
or edi, 0x1000000
mov dword [esp + 0x10], edi
cmp esi, 1
jne 0x100051c9
test ebp, ebp
jne 0x100051a8
cmp dword [esp + 0x550], 0x79
je 0x100051a8
mov eax, dword [esp + 0x550]
push eax
mov dword [esp + 0x18], 0x100
call fcn.10014ca0
jmp 0x10005215
mov eax, dword [esp + 0x550]
or edi, 0x20000000
push eax
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], 0x104
call fcn.10014ca0
jmp 0x10005215
test ebp, ebp
jne 0x100051eb
cmp dword [esp + 0x550], 0x79
je 0x100051eb
or edi, 0xc0000000
mov dword [esp + 0x14], 0x101
mov dword [esp + 0x10], edi
jmp 0x10005203
or edi, 0x20000000
or edi, 0xc0000000
mov dword [esp + 0x14], 0x105
mov dword [esp + 0x10], edi
cmp esi, 2
jne 0x10005218
mov ecx, dword [esp + 0x550]
push ecx
call fcn.10014ce0
add esp, 4
test ebx, ebx
je 0x10005222
xor edi, edi
mov dword [esp + 0x10], edi
call fcn.100083f0
mov ebx, dword [esp + 0x20]
mov esi, eax
test esi, esi
mov dword [esp + 0x24], esi
jne 0x10005242
push ebx
call dword [sym.imp.USER32.dll_SetFocus]
mov esi, ebx
mov dword [esp + 0x24], esi
push 0x797a779e
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10005259
mov esi, ebx
mov dword [esp + 0x24], esi
cmp dword [0x10037ce4], 0
jne 0x10005279
cmp esi, ebx
jne 0x10005279
cmp dword [0x10037cd8], 0
jne 0x10005279
or edi, 0x4000000
mov dword [esp + 0x10], edi
push 0x18d3d20
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x1000562f
cmp dword [0x10038500], 0
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ebp, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov bl, 0x65
jne 0x10005461
lea edx, [esp + 0x3e4]
push edx
lea eax, [esp + 0x3dc]
push eax
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 + 0x3ec], 0x47
mov byte [esp + 0x3ed], bl
mov byte [esp + 0x3ee], 0x74
mov byte [esp + 0x3ef], 0x52
mov byte [esp + 0x3f0], bl
mov byte [esp + 0x3f1], 0x67
mov byte [esp + 0x3f2], 0x69
mov byte [esp + 0x3f3], 0x73
mov byte [esp + 0x3f4], 0x74
mov byte [esp + 0x3f5], bl
mov byte [esp + 0x3f6], 0x72
mov byte [esp + 0x3f7], bl
mov byte [esp + 0x3f8], 0x64
mov byte [esp + 0x3f9], 0x52
mov byte [esp + 0x3fa], 0x61
mov byte [esp + 0x3fb], 0x77
mov byte [esp + 0x3fc], 0x49
mov byte [esp + 0x3fd], 0x6e
mov byte [esp + 0x3fe], 0x70
mov byte [esp + 0x3ff], 0x75
mov byte [esp + 0x400], 0x74
mov byte [esp + 0x401], 0x44
mov byte [esp + 0x402], bl
mov byte [esp + 0x403], 0x76
mov byte [esp + 0x404], 0x69
mov byte [esp + 0x405], 0x63
mov byte [esp + 0x406], bl
mov byte [esp + 0x407], 0x73
mov byte [esp + 0x408], 0
call ebp
push eax
call edi
mov esi, eax
test esi, esi
je 0x1000544f
push 0x78
lea ecx, [esp + 0x44]
push 0
push ecx
mov dword [esp + 0x24], 0xa
call fcn.1001a890
add esp, 0xc
push 0xc
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x48]
push eax
call esi
xor ecx, ecx
test eax, eax
jbe 0x1000544f
lea edx, [esp + 0x42]
mov edi, edi
cmp word [edx], 6
je 0x10005442
add ecx, 1
add edx, 0xc
cmp ecx, eax
jb 0x10005430
jmp 0x1000544f
lea ecx, [ecx + ecx*2]
mov edx, dword [esp + ecx*4 + 0x48]
mov dword [0x10038500], edx
cmp dword [0x10038500], 0
jne 0x10005461
mov eax, dword [esp + 0x24]
mov dword [0x10038500], eax
cmp dword [0x1003850c], 0
jne 0x100055ec
lea ecx, [esp + 0x3e4]
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 + 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 0x100055ec
push 0x320
lea eax, [esp + 0xbc]
push 0
push eax
mov dword [esp + 0x24], 0x64
call fcn.1001a890
add esp, 0xc
push 8
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0xc0]
push edx
call esi
xor ecx, ecx
test eax, eax
jbe 0x100055ec
cmp dword [esp + ecx*8 + 0xbc], 1
jne 0x100055d7
cmp dword [esp + ecx*8 + 0xb8], 0
jne 0x100055e0
add ecx, 1
cmp ecx, eax
jb 0x100055c3
jmp 0x100055ec
mov eax, dword [esp + ecx*8 + 0xb8]
mov dword [0x1003850c], eax
cmp dword [esp + 0x28], 0
je 0x10005618
mov ecx, dword [0x10037cec]
mov edx, dword [0x10038500]
push 0
push ecx
push 1
push 0x12345678
push 0
push 0xff
push edx
call fcn.10001690
jmp 0x1000562f
mov eax, dword [0x10038500]
push 0x12345678
push 0
push 0xff
push eax
call fcn.10001680
cmp dword [0x10038514], 0
mov esi, dword [esp + 0x550]
je 0x1000567b
mov edx, dword [0x1003851c]
xor ecx, ecx
lea eax, [edx + edx*4]
lea eax, [eax*4 + 0x10037a80]
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 [0x1003851c], edx
jb 0x1000567b
mov dword [0x1003851c], 0
cmp dword [0x1003101c], 0
je 0x100056dc
cmp dword [esp + 0x28], 0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
je 0x100056bd
mov edx, dword [0x10037cec]
push 0
push edx
mov edx, dword [esp + 0x2c]
push 1
push eax
push esi
push ecx
push edx
call fcn.10001690
mov eax, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
mov edx, dword [esp + 0x24]
push eax
push esi
push ecx
push edx
call fcn.10001680
mov eax, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
mov edi, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
and edi, 0xfbffffff
push edi
push esi
push ebp
push eax
call dword [0x10038560]
mov ecx, dword [esp + 0x24]
xor eax, eax
lea edx, [esp + 0x3e4]
mov dword [esp + 0x3e4], eax
mov dword [esp + 0x3e8], eax
mov dword [esp + 0x3ec], eax
mov dword [esp + 0x3f0], eax
push edx
mov dword [esp + 0x3f8], eax
mov dword [esp + 0x3fc], eax
mov dword [esp + 0x400], eax
mov dword [esp + 0x3e8], ecx
mov dword [esp + 0x3ec], ebp
mov dword [esp + 0x3f0], esi
mov dword [esp + 0x3f4], edi
call dword [sym.imp.USER32.dll_TranslateMessage]
mov eax, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x838
jne 0x1000609b
mov eax, dword [esp + 0x54c]
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 + 0x38], ebp
mov dword [esp + 0x3d8], edi
je 0x100057a5
lea ecx, [edi + 1]
test al, 2
je 0x100057ae
mov edi, 1
test al, 4
je 0x100057bd
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 + 0x30], edx
ja 0x10006dea
xor esi, esi
cmp ebp, 1
mov dword [esp + 0x24], ebx
mov ebx, dword [sym.imp.USER32.dll_ClientToScreen]
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], esi
jne 0x1000582c
test ecx, ecx
je 0x10005803
mov esi, 1
mov dword [esp + 0x10], esi
test edi, edi
je 0x1000580e
or esi, 2
mov dword [esp + 0x10], esi
cmp dword [esp + 0x3d8], 0
je 0x1000581f
or esi, 0x10
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], 0x200
jmp 0x10005964
cmp ebp, 2
jne 0x10005847
mov esi, 1
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], 0x201
jmp 0x10005964
cmp ebp, 8
jne 0x10005862
mov esi, 1
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], 0x203
jmp 0x10005964
cmp ebp, 3
jne 0x10005874
mov dword [esp + 0x14], 0x202
jmp 0x10005964
cmp ebp, 4
jne 0x1000588f
mov esi, 2
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], 0x204
jmp 0x10005964
cmp ebp, 5
jne 0x100058a1
mov dword [esp + 0x14], 0x205
jmp 0x10005964
cmp ebp, 6
jne 0x100058bc
mov esi, 0x10
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], 0x207
jmp 0x10005964
cmp ebp, 7
jne 0x100058ce
mov dword [esp + 0x14], 0x208
jmp 0x10005964
cmp ebp, 9
jne 0x100058f9
test ecx, ecx
je 0x100058da
lea esi, [ebp - 8]
test edi, edi
je 0x100058e1
or esi, 2
cmp dword [esp + 0x3d8], 0
je 0x100058ee
or esi, 0x10
movzx esi, si
or esi, 0x780000
jmp 0x10005922
cmp ebp, 0xa
jne 0x10005964
test ecx, ecx
je 0x10005905
lea esi, [ebp - 9]
test edi, edi
je 0x1000590c
or esi, 2
cmp dword [esp + 0x3d8], 0
je 0x10005919
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 + 0x18], 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 + 0x14], 0x20a
mov dword [esp + 0x24], eax
cmp dword [0x10037ce4], 0
jne 0x10005980
cmp dword [0x10037cd8], 0
jne 0x10005980
or esi, 0x8000
mov dword [esp + 0x10], esi
cmp ebp, 1
jne 0x10005a19
mov ecx, dword [esp + 0x20]
movsx esi, word [0x10037c9c]
movsx edi, word [0x10037c9e]
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 + 0x30]
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 + 0x30]
shl edx, 0x10
or edx, ebx
test ecx, ecx
mov dword [0x10037c9c], edx
mov esi, eax
je 0x100059ff
push ebp
push ecx
push 0x37
call fcn.10014c60
add esp, 0xc
test esi, esi
je 0x10005ab1
push 1
push esi
push 0x38
call fcn.10014c60
add esp, 0xc
jmp 0x10005ab1
cmp ebp, 2
je 0x10005aa5
cmp ebp, 8
je 0x10005aa5
cmp ebp, 3
jne 0x10005a3b
push 1
push 0
call fcn.10014c20
jmp 0x10005aae
cmp ebp, 4
jne 0x10005a46
push 1
push 1
jmp 0x10005aa9
cmp ebp, 5
jne 0x10005a56
push 1
push 1
call fcn.10014c20
jmp 0x10005aae
cmp ebp, 6
jne 0x10005a61
push 1
push 2
jmp 0x10005aa9
cmp ebp, 7
jne 0x10005a71
push 1
push 2
call fcn.10014c20
jmp 0x10005aae
cmp ebp, 0xa
jne 0x10005a8b
push 1
push 4
call fcn.10014bf0
push 0xffffffffffffff88
call fcn.10011ab0
add esp, 0xc
jmp 0x10005ab1
cmp ebp, 9
jne 0x10005ab1
push 1
push 5
call fcn.10014bf0
push 0x78
call fcn.10011ab0
add esp, 0xc
jmp 0x10005ab1
push 1
push 0
call fcn.10014bf0
add esp, 8
call fcn.100083f0
test eax, eax
mov esi, dword [esp + 0x20]
mov dword [esp + 0x3d8], eax
jne 0x10005ad3
push esi
call dword [sym.imp.USER32.dll_SetFocus]
mov dword [esp + 0x3d8], esi
push 0x797a779e
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10005aeb
mov dword [esp + 0x3d8], esi
mov edi, dword [esp + 0x28]
test edi, edi
je 0x10005b13
mov eax, dword [0x10037ce8]
mov ecx, dword [0x10037c9c]
push 0
push eax
push 1
push ecx
push 0
push 0x84
push esi
call fcn.10001690
jmp 0x10005b27
mov edx, dword [0x10037c9c]
push edx
push 0
push 0x84
push esi
call fcn.10001670
cmp ebp, 1
jne 0x10005b57
test edi, edi
je 0x10005b49
mov eax, dword [0x10037ce8]
push 0
push eax
push ebp
push 0x2000001
push esi
push 0x20
push esi
call fcn.10001690
jmp 0x10005b57
push 0x2000001
push esi
push 0x20
push esi
call fcn.10001670
push 0x326cd5b9
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x10005f64
cmp dword [0x10038504], 0
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ebp, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov bl, 0x65
jne 0x10005d45
lea ecx, [esp + 0x3e4]
push ecx
lea edx, [esp + 0x408]
push edx
mov byte [esp + 0x40c], 0x75
mov byte [esp + 0x40d], 0x73
mov byte [esp + 0x40e], bl
mov byte [esp + 0x40f], 0x72
mov byte [esp + 0x410], 0x33
mov byte [esp + 0x411], 0x32
mov byte [esp + 0x412], 0x2e
mov byte [esp + 0x413], 0x64
mov byte [esp + 0x414], 0x6c
mov byte [esp + 0x415], 0x6c
mov byte [esp + 0x416], 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], bl
mov byte [esp + 0x3f1], 0x67
mov byte [esp + 0x3f2], 0x69
mov byte [esp + 0x3f3], 0x73
mov byte [esp + 0x3f4], 0x74
mov byte [esp + 0x3f5], bl
mov byte [esp + 0x3f6], 0x72
mov byte [esp + 0x3f7], bl
mov byte [esp + 0x3f8], 0x64
mov byte [esp + 0x3f9], 0x52
mov byte [esp + 0x3fa], 0x61
mov byte [esp + 0x3fb], 0x77
mov byte [esp + 0x3fc], 0x49
mov byte [esp + 0x3fd], 0x6e
mov byte [esp + 0x3fe], 0x70
mov byte [esp + 0x3ff], 0x75
mov byte [esp + 0x400], 0x74
mov byte [esp + 0x401], 0x44
mov byte [esp + 0x402], bl
mov byte [esp + 0x403], 0x76
mov byte [esp + 0x404], 0x69
mov byte [esp + 0x405], 0x63
mov byte [esp + 0x406], bl
mov byte [esp + 0x407], 0x73
mov byte [esp + 0x408], 0
call ebp
push eax
call edi
mov esi, eax
test esi, esi
je 0x10005d2f
push 0x78
lea eax, [esp + 0x44]
push 0
push eax
mov dword [esp + 0x24], 0xa
call fcn.1001a890
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 0x10005d2f
lea edx, [esp + 0x42]
lea esp, [esp]
cmp word [edx], 2
je 0x10005d22
add ecx, 1
add edx, 0xc
cmp ecx, eax
jb 0x10005d10
jmp 0x10005d2f
lea eax, [ecx + ecx*2]
mov ecx, dword [esp + eax*4 + 0x48]
mov dword [0x10038504], ecx
cmp dword [0x10038504], 0
jne 0x10005d45
mov edx, dword [esp + 0x3d8]
mov dword [0x10038504], edx
cmp dword [0x10038508], 0
jne 0x10005eda
lea eax, [esp + 0x3e4]
push eax
lea ecx, [esp + 0x408]
push ecx
mov byte [esp + 0x40c], 0x75
mov byte [esp + 0x40d], 0x73
mov byte [esp + 0x40e], bl
mov byte [esp + 0x40f], 0x72
mov byte [esp + 0x410], 0x33
mov byte [esp + 0x411], 0x32
mov byte [esp + 0x412], 0x2e
mov byte [esp + 0x413], 0x64
mov byte [esp + 0x414], 0x6c
mov byte [esp + 0x415], 0x6c
mov byte [esp + 0x416], 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 0x10005eda
push 0x320
lea edx, [esp + 0xbc]
push 0
push edx
mov dword [esp + 0x24], 0x64
call fcn.1001a890
add esp, 0xc
push 8
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0xc0]
push ecx
call esi
xor ecx, ecx
test eax, eax
jbe 0x10005eda
jmp 0x10005eb0
cmp dword [esp + ecx*8 + 0xbc], 0
jne 0x10005ec4
cmp dword [esp + ecx*8 + 0xb8], 0
jne 0x10005ecd
add ecx, 1
cmp ecx, eax
jb 0x10005eb0
jmp 0x10005eda
mov edx, dword [esp + ecx*8 + 0xb8]
mov dword [0x10038508], edx
cmp dword [esp + 0x28], 0
mov ecx, dword [0x10038504]
je 0x10005f2f
mov eax, dword [0x10037ce8]
push 0
push eax
push 1
push 0x12345679
push 0
push 0xff
push ecx
call fcn.10001690
mov esi, dword [esp + 0x38]
cmp esi, 1
jne 0x10005f66
mov edx, dword [0x10037ce8]
mov eax, dword [0x10038504]
push 0
push edx
push esi
push 0x12345679
push 0
push 0xff
push eax
call fcn.10001690
jmp 0x10005f66
push 0x12345679
push 0
push 0xff
push ecx
call fcn.10001680
mov esi, dword [esp + 0x38]
cmp esi, 1
jne 0x10005f66
mov edx, dword [0x10038504]
push 0x12345679
push 0
push 0xff
push edx
call fcn.10001680
jmp 0x10005f66
mov esi, ebp
cmp dword [0x10038518], 0
mov edi, dword [esp + 0x14]
je 0x1000600d
cmp edi, 0x203
je 0x1000600d
cmp edi, 0x207
je 0x1000600d
cmp edi, 0x208
je 0x1000600d
mov eax, dword [0x10038524]
xor ecx, ecx
cmp edi, 0x20a
lea eax, [eax + eax*2]
lea eax, [eax*8 + 0x10037b48]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], ecx
movsx ecx, word [esp + 0x550]
mov dword [eax], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 4], ecx
jne 0x10005fe3
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 [0x10038524]
add eax, 1
cmp eax, 0xa
mov dword [0x10038524], eax
jb 0x10006011
mov dword [0x10038524], 0
jmp 0x10006011
mov esi, dword [esp + 0x20]
cmp dword [0x10031020], 0
je 0x10006072
cmp dword [esp + 0x28], 0
je 0x1000604f
mov edx, dword [0x10037ce8]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
push 0
push edx
push 1
push eax
push ecx
push edi
push esi
call fcn.10001690
mov eax, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
push edx
push eax
push edi
push esi
call fcn.10001680
mov eax, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
and eax, 0xfbffffff
push eax
push ecx
push edi
push esi
call dword [0x10038560]
mov eax, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x83a
jne 0x100060cb
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov eax, 1
mov dword [0x1003100c], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x83d
jne 0x1000610b
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov edx, ebx
shr edx, 0x10
movsx eax, dx
movsx ecx, bx
push eax
push ecx
call fcn.10011a90
mov eax, 1
add esp, 8
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x83f
jne 0x1000614d
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov edx, ebx
and edx, 0x7fffffff
mov eax, 1
shr ebx, 0x1f
mov dword [0x10037cb4], edx
mov dword [0x10037cb0], ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x863
jne 0x1000618b
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
fild dword [esp + 0x550]
mov eax, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
fdiv qword [0x1002b328]
fstp qword [0x10031028]
jmp 0x10006dea
cmp edi, 0x842
jne 0x1000620a
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
push 0x16cc25d5
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x100061f5
call fcn.10011c60
mov esi, eax
push esi
call fcn.100012c0
mov edi, eax
push ebx
push edi
call fcn.100010d0
add esp, 0xc
test esi, esi
mov dword [esp + 0x14], eax
je 0x100061dd
push esi
call dword [sym.imp.USER32.dll_DestroyCursor]
test edi, edi
je 0x100061fd
push edi
call dword [sym.imp.GDI32.dll_DeleteObject]
mov dword [esp + 0x10], 1
jmp 0x10006dea
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 1
jmp 0x10006dea
cmp edi, 0x843
jne 0x100062c1
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
push 0x16cc25d5
call fcn.1000a0b0
add esp, 4
test eax, eax
je 0x100062ac
call fcn.10011c60
mov esi, eax
test esi, esi
mov edi, 0xffff
mov ebp, edi
je 0x10006290
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 0x1000626d
push eax
call edi
mov eax, dword [esp + 0x3f0]
test eax, eax
je 0x1000627b
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 + 0x14], eax
mov dword [esp + 0x10], 1
jmp 0x10006dea
mov dword [esp + 0x14], 0xffffffff
mov dword [esp + 0x10], 1
jmp 0x10006dea
cmp edi, 0x844
jne 0x1000631c
cmp dword [esp + 0x54c], 0x1234
jne 0x10006307
mov eax, dword [0x10037cc4]
cmp eax, 0x1000
jge 0x10006307
lea ecx, [eax + 1]
mov dword [esp + 0x14], ecx
mov dword [eax*4 + 0x10033a20], 1
mov dword [0x10037cc4], ecx
mov dword [esp + 0x10], 1
jmp 0x10006dea
mov dword [esp + 0x14], 0x1388
mov dword [esp + 0x10], 1
jmp 0x10006dea
cmp edi, 0x845
jne 0x1000635d
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
lea edx, [ebx - 1]
cmp edx, 0xfff
ja 0x10003fc6
mov eax, 1
mov dword [ebx*4 + 0x10033a1c], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x846
jne 0x10006450
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
cmp ebx, ecx
mov eax, 1
jne 0x100063a2
mov dword [0x10037cd0], ecx
mov dword [0x10038510], ecx
mov dword [0x10037ccc], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp ebx, eax
jne 0x100063c3
mov dword [0x10037ccc], eax
mov dword [0x10037cd0], eax
mov dword [0x10038510], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp ebx, 2
jne 0x100063e6
mov dword [0x10037ccc], eax
mov dword [0x10037cd0], ecx
mov dword [0x10038510], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp ebx, 3
jne 0x10006409
mov dword [0x10038510], ecx
mov dword [0x10037cd0], eax
mov dword [0x10037ccc], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp ebx, 4
jne 0x1000642a
mov dword [0x10037ccc], eax
mov dword [0x10037cd0], eax
mov dword [0x10038510], eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp ebx, 5
jne 0x10003fcb
mov dword [0x10038510], eax
mov dword [0x10037cd0], eax
mov dword [0x10037ccc], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x850
jne 0x10006481
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov eax, 1
mov dword [0x10037cd4], ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x851
jne 0x100064b0
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov eax, dword [0x10037c9c]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 1
jmp 0x10006dea
cmp edi, 0x852
jne 0x100064e1
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov eax, 1
mov dword [0x1003101c], ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x853
jne 0x10006512
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov eax, 1
mov dword [0x10031020], ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x84d
jne 0x10006543
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov eax, 1
mov dword [0x10037cd8], ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x84f
jne 0x10006afb
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
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 0x10006859
lea ecx, [esp + 0x3d8]
push ecx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x10003fc6
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
lea edx, [esp + 0x404]
push edx
mov bl, 0x65
push esi
mov byte [esp + 0x40c], 0x49
mov byte [esp + 0x40d], 0x6d
mov byte [esp + 0x40e], 0x6d
mov byte [esp + 0x40f], 0x47
mov byte [esp + 0x410], bl
mov byte [esp + 0x411], 0x74
mov byte [esp + 0x412], 0x43
mov byte [esp + 0x413], 0x6f
mov byte [esp + 0x414], 0x6e
mov byte [esp + 0x415], 0x74
mov byte [esp + 0x416], bl
mov byte [esp + 0x417], 0x78
mov byte [esp + 0x418], 0x74
mov byte [esp + 0x419], 0
call edi
mov ebp, eax
lea eax, [esp + 0x414]
push eax
push esi
mov byte [esp + 0x41c], 0x49
mov byte [esp + 0x41d], 0x6d
mov byte [esp + 0x41e], 0x6d
mov byte [esp + 0x41f], 0x47
mov byte [esp + 0x420], bl
mov byte [esp + 0x421], 0x74
mov byte [esp + 0x422], 0x4f
mov byte [esp + 0x423], 0x70
mov byte [esp + 0x424], bl
mov byte [esp + 0x425], 0x6e
mov byte [esp + 0x426], 0x53
mov byte [esp + 0x427], 0x74
mov byte [esp + 0x428], 0x61
mov byte [esp + 0x429], 0x74
mov byte [esp + 0x42a], 0x75
mov byte [esp + 0x42b], 0x73
mov byte [esp + 0x42c], 0
call edi
lea ecx, [esp + 0x428]
push ecx
push esi
mov dword [esp + 0x20], eax
mov byte [esp + 0x430], 0x49
mov byte [esp + 0x431], 0x6d
mov byte [esp + 0x432], 0x6d
mov byte [esp + 0x433], 0x53
mov byte [esp + 0x434], bl
mov byte [esp + 0x435], 0x74
mov byte [esp + 0x436], 0x4f
mov byte [esp + 0x437], 0x70
mov byte [esp + 0x438], bl
mov byte [esp + 0x439], 0x6e
mov byte [esp + 0x43a], 0x53
mov byte [esp + 0x43b], 0x74
mov byte [esp + 0x43c], 0x61
mov byte [esp + 0x43d], 0x74
mov byte [esp + 0x43e], 0x75
mov byte [esp + 0x43f], 0x73
mov byte [esp + 0x440], 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 [0x10037ca8]
add eax, 0xffffffec
push eax
call ebp
mov edi, eax
push edi
call dword [esp + 0x1c]
test eax, eax
jne 0x10006833
push 1
push edi
call dword [esp + 0x30]
mov ecx, dword [0x10037ca8]
push edi
add ecx, 0xffffffec
push ecx
call ebx
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
lea edx, [esp + 0x3d8]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
test esi, esi
je 0x10003fc6
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
lea eax, [esp + 0x404]
push eax
mov bl, 0x65
push esi
mov byte [esp + 0x40c], 0x49
mov byte [esp + 0x40d], 0x6d
mov byte [esp + 0x40e], 0x6d
mov byte [esp + 0x40f], 0x47
mov byte [esp + 0x410], bl
mov byte [esp + 0x411], 0x74
mov byte [esp + 0x412], 0x43
mov byte [esp + 0x413], 0x6f
mov byte [esp + 0x414], 0x6e
mov byte [esp + 0x415], 0x74
mov byte [esp + 0x416], bl
mov byte [esp + 0x417], 0x78
mov byte [esp + 0x418], 0x74
mov byte [esp + 0x419], 0
call edi
lea ecx, [esp + 0x428]
push ecx
push esi
mov ebp, eax
mov byte [esp + 0x430], 0x49
mov byte [esp + 0x431], 0x6d
mov byte [esp + 0x432], 0x6d
mov byte [esp + 0x433], 0x47
mov byte [esp + 0x434], bl
mov byte [esp + 0x435], 0x74
mov byte [esp + 0x436], 0x4f
mov byte [esp + 0x437], 0x70
mov byte [esp + 0x438], bl
mov byte [esp + 0x439], 0x6e
mov byte [esp + 0x43a], 0x53
mov byte [esp + 0x43b], 0x74
mov byte [esp + 0x43c], 0x61
mov byte [esp + 0x43d], 0x74
mov byte [esp + 0x43e], 0x75
mov byte [esp + 0x43f], 0x73
mov byte [esp + 0x440], 0
call edi
lea edx, [esp + 0x414]
push edx
push esi
mov dword [esp + 0x20], eax
mov byte [esp + 0x41c], 0x49
mov byte [esp + 0x41d], 0x6d
mov byte [esp + 0x41e], 0x6d
mov byte [esp + 0x41f], 0x53
mov byte [esp + 0x420], bl
mov byte [esp + 0x421], 0x74
mov byte [esp + 0x422], 0x4f
mov byte [esp + 0x423], 0x70
mov byte [esp + 0x424], bl
mov byte [esp + 0x425], 0x6e
mov byte [esp + 0x426], 0x53
mov byte [esp + 0x427], 0x74
mov byte [esp + 0x428], 0x61
mov byte [esp + 0x429], 0x74
mov byte [esp + 0x42a], 0x75
mov byte [esp + 0x42b], 0x73
mov byte [esp + 0x42c], 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 [0x10037ca8]
add ecx, 0xffffffec
push ecx
mov ebx, eax
call ebp
mov edi, eax
push edi
call dword [esp + 0x1c]
test eax, eax
je 0x10006ad5
push 0
push edi
call dword [esp + 0x30]
mov edx, dword [0x10037ca8]
push edi
add edx, 0xffffffec
push edx
call ebx
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x847
jne 0x10006b2c
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov eax, 1
mov dword [0x10037cdc], ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x848
jne 0x10006b5d
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov eax, 1
mov dword [0x10037ce0], ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x840
jne 0x10006b88
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov eax, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x841
jne 0x10006bb3
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov eax, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x849
jne 0x10006beb
mov eax, dword [esp + 0x54c]
cmp eax, ecx
je 0x10006bcb
mov dword [0x10037cec], eax
cmp ebx, ecx
je 0x10003fc6
mov eax, 1
mov dword [0x10037ce8], ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x84a
jne 0x10006cd4
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
cmp ebx, ecx
je 0x10006cbc
push 0xff
lea eax, [esp + 0x441]
push 0
push eax
mov byte [0x10037cf8], 0
mov byte [esp + 0x448], 0
call fcn.1001a890
mov ecx, dword [esp + 0x24]
add esp, 0xc
push ecx
push 3
call fcn.100181f0
add esp, 4
push eax
lea edx, [esp + 0x444]
push edx
call fcn.100181c0
add esp, 0xc
lea eax, [esp + 0x43c]
push eax
push 0
push 0xf001f
call fcn.10002980
mov edi, eax
test edi, edi
je 0x10006ca0
push 0
push 0
push 0
push 6
push edi
call fcn.100027c0
mov esi, 0x10037cf8
mov ecx, eax
sub esi, eax
mov dl, byte [ecx]
mov byte [esi + ecx], dl
add ecx, 1
test dl, dl
jne 0x10006c87
push eax
call fcn.10002890
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, 1
mov dword [0x10037cf0], 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
mov eax, 1
mov dword [0x10037cf0], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
jmp 0x10006dea
cmp edi, 0x84b
jne 0x10006d0c
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
xor edx, edx
cmp ebx, ecx
setne dl
mov eax, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], eax
mov dword [0x10031018], edx
jmp 0x10006dea
cmp edi, 0x854
jne 0x10006d3b
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov eax, dword [0x10037cb8]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 1
jmp 0x10006dea
cmp edi, 0x84c
jne 0x10006dea
cmp dword [esp + 0x54c], 0x1234
jne 0x10006dea
mov esi, 1
push esi
mov dword [0x10031018], 0
call fcn.1000bae0
add esp, 4
mov dword [0x10031018], esi
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], esi
jmp 0x10006dea
mov ecx, dword [0x10037ca8]
add ecx, 0xffffffec
je 0x10006dea
push 0x592629e2
call fcn.1000a0b0
add esp, 4
test eax, eax
jne 0x10006da4
cmp dword [0x10037ccc], eax
je 0x10006dc7
cmp dword [0x10037ce4], 0
jne 0x10006dc7
mov edx, dword [esp + 0x54c]
mov eax, dword [esp + 0x20]
push ebx
push edx
push edi
push eax
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x10003e16
movsx eax, bx
shr ebx, 0x10
cmp dword [0x10037cdc], 0
movsx ecx, bx
jne 0x10006dea
movzx ecx, cx
movzx edx, ax
shl ecx, 0x10
or ecx, edx
mov dword [0x10037c9c], ecx
mov eax, dword [esp + 0x34]
test eax, eax
je 0x10006e05
push eax
call fcn.10002e50
mov eax, dword [esp + 0x40]
push eax
call fcn.10001ed0
add esp, 8
cmp dword [esp + 0x10], 1
jne 0x10006e15
mov eax, dword [esp + 0x14]
jmp 0x10003e16
mov eax, dword [0x10038560]
test eax, eax
mov ecx, dword [esp + 0x554]
je 0x10006e4d
test ecx, ecx
jne 0x10006e4d
mov ecx, dword [esp + 0x550]
mov edx, dword [esp + 0x54c]
push ecx
mov ecx, dword [esp + 0x54c]
push edx
mov edx, dword [esp + 0x28]
push ecx
push edx
call eax
jmp 0x10003e16
mov eax, dword [0x1003856c]
test eax, eax
je 0x10003e14
test ecx, ecx
je 0x10003e14
mov edx, dword [esp + 0x550]
push edx
mov edx, dword [esp + 0x550]
push edx
mov edx, dword [esp + 0x550]
push edx
mov edx, dword [esp + 0x2c]
push edx
push ecx
call eax
jmp 0x10003e16