Function at 0x1001888f
Capabilities:
Get graphical window text

Disassembly:
mov eax, 0x10063c63
call fcn.10063438
sub esp, 0x294
mov dword [ebp - 0x4c], ecx
push ebx
mov dword [ebp - 0x2c], 7
xor ebx, ebx
mov dword [ebp - 0x38], 0x9cd49fcf
push esi
push edi
mov dword [ebp - 0x38], 0x67656540
xor edi, edi
mov dword [ebp - 0x38], 0x23a34071
inc edi
mov dword [ebp - 0x38], 6
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x2c], ebx
cmp dword [ebp - 0x2c], 0xfffffff2
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x3c], edx
jne 0x10018ad2
mov esi, dword [sym.imp.GDI32.dll_CreateFontA]
mov dword [ebp - 0x24], 0x643cdf98
mov dword [ebp - 0x18], ebx
jmp 0x10018906
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1f8], 0xd3c15d0d
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x100188f5
mov dword [ebp - 0x18], ebx
jmp 0x1001891f
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x54], 0x8c5c
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10018911
mov dword [ebp - 0x24], 0xffffffeb
jmp 0x10018aa7
push 4
lea ecx, [ebp - 0x108]
call fcn.1001a8b6
mov dword [ebp - 4], ebx
mov dword [ebp - 0x28], 0xb8ce3e63
mov dword [ebp - 0x1c], 0x87a7525d
push 4
mov dword [ebp - 0x30], 0xfffffffa
pop edx
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x1c], ebx
jmp 0x1001896f
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x108]
mov dword [eax + ecx*4], edi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10018960
mov eax, dword [ebp - 0x108]
cmp dword [eax + 8], ebx
jne 0x10018ab3
mov dword [ebp - 0x28], 0xfffffff5
jmp 0x10018a8b
push edi
lea ecx, [ebp - 0x128]
call fcn.1001a8b6
mov dword [ebp - 0x1c], ebx
jmp 0x100189b3
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x128]
mov dword [eax + ecx*4], 0x9e672ca3
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x100189a0
mov eax, dword [ebp - 0x128]
mov dword [eax], 0xffffffee
mov dword [ebp - 0x1c], 6
jmp 0x10018a73
mov dword [ebp - 0x20], 0x81a8
mov dword [ebp - 0x34], 0x4886255d
mov dword [ebp - 0x18], 9
mov dword [ebp - 0x34], 0xdf78b15b
cmp dword [ebp - 0x40], ebx
jne 0x10018a1e
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
dec edx
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
mov eax, ebx
setle cl
mov dword [ebp - 0x18], ecx
cmp dword [ebp - 0x18], ebx
je 0x10018a20
mov eax, edi
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10018a70
push ebx
push 0xb1f
push 0xc34
push 0xf23
push 0x22f3
push 0x170
push 0x460
push 0xa64
push 0x1b05
push 0x851
push 0xcb0
push 0x1a84
push 0x6d6
push 0xf6e
call esi
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xfffffff1
je 0x100189d0
lea ecx, [ebp - 0x128]
call fcn.1001a938
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xfffffffb
jge 0x1001898f
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x108]
call fcn.1001a938
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffe7
jl 0x10018930
jmp 0x10018ac2
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x108]
call fcn.1001a938
dec dword [ebp - 0x54]
dec dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xfffffff2
je 0x100188e9
mov dword [ebp - 0x34], 0x5cbf
cmp dword [ebp - 0x34], 0x5f0b
jle 0x10018b5e
mov eax, ebx
mov dword [ebp - 0x28], ebx
mov ecx, eax
mov dword [ebp - 0x2c], 0x1885
mov dword [ebp - 0x20], ecx
mov eax, ebx
mov dword [ebp - 0x1c], ebx
mov esi, ebx
cdq
idiv esi
xor edx, ecx
lea ecx, [ebp - 0x230]
mov eax, edx
cdq
push edx
push eax
call fcn.1000d41a
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10018b19
mov eax, dword [eax]
push eax
call fcn.1004e4c6
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x230]
call fcn.1001ad06
mov eax, dword [ebp - 0x1c]
inc esi
mov ecx, dword [ebp - 0x20]
cmp esi, 0x4f59
jl 0x10018afa
inc eax
mov dword [ebp - 0x1c], eax
cmp eax, 0x50b
jl 0x10018af8
dec ecx
dec dword [ebp - 0x2c]
mov dword [ebp - 0x20], ecx
jne 0x10018af3
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp eax, 0x7ce9
jl 0x10018ae7
mov dword [ebp - 0x18], 0xfffffff9
mov dword [ebp - 0x1c], 0xce96f8f
mov dword [ebp - 0x20], 0xe81d534a
mov dword [ebp - 0x1c], ebx
jmp 0x10018b89
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1bc], 0xd1649bc0
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x10018b78
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp eax, edi
setge cl
sub ecx, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
inc ecx
sub ecx, dword [ebp - 0x18]
cmp ecx, dword [ebp - 0x18]
jle 0x10018bb9
mov ecx, edi
cmp dword [ebp - 0x18], ebx
jne 0x10018bbb
mov ecx, ebx
mov eax, dword [ebp - 0x18]
imul eax, ecx
xor ecx, ecx
neg eax
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
add edx, 0xffff
cmp edx, eax
mov eax, dword [ebp - 0x18]
setne cl
add eax, ecx
mov dword [ebp - 0x1bc], eax
jne 0x10018bed
mov eax, ebx
cmp dword [ebp - 0x18], ebx
je 0x10018bef
mov eax, edi
add eax, 0xfbd1
je 0x10018bfd
mov eax, edi
cmp dword [ebp - 0x1c], ebx
jne 0x10018bff
mov eax, ebx
mov dword [ebp - 0x20], eax
xor edx, edx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setge dl
xor ecx, ecx
cmp edx, eax
setl cl
cmp dword [ebp - 0x18], ecx
jl 0x10018cc2
mov dword [ebp - 0x28], 0x87a9b65c
mov dword [ebp - 0x24], 0x490c
cmp dword [ebp - 0x24], 0x4956
jle 0x10018ca9
mov dword [ebp - 0x2c], ebx
mov ecx, ebx
mov dword [ebp - 0x1c], 0x7d2e
mov dword [ebp - 0x20], ecx
mov esi, ebx
mov eax, ecx
mov ecx, esi
sar eax, cl
lea ecx, [ebp - 0x260]
cdq
push edx
push eax
call fcn.1000d41a
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10018c71
mov eax, dword [eax]
push eax
call fcn.1004e4c6
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x260]
call fcn.1001ad06
mov ecx, dword [ebp - 0x20]
inc esi
cmp esi, 0x2303
jl 0x10018c53
mov eax, dword [ebp - 0x2c]
add ecx, eax
dec dword [ebp - 0x1c]
mov dword [ebp - 0x20], ecx
jne 0x10018c51
inc eax
mov dword [ebp - 0x2c], eax
cmp eax, 0x7717
jl 0x10018c45
dec dword [ebp - 0x28]
cmp dword [ebp - 0x24], 0x4581
jge 0x10018cd6
push 0x100088ec
call fcn.1004e4c6
pop ecx
jmp 0x10018cd6
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10018cd6
push 0x1d37
call dword [sym.imp.USER32.dll_IsWindow]
cmp dword [ebp - 0x34], 0x5a35
jge 0x10018cea
push 0x100088b4
call fcn.1004e4c6
pop ecx
or dword [ebp - 4], 0xffffffff
mov eax, dword [0x1060e598]
test al, 1
jne 0x10018d85
or eax, edi
mov dword [0x1060e598], eax
push ebx
mov dword [ebp - 4], 5
push ebx
mov dword [0x1060e570], ebx
mov dword [0x1060e574], ebx
call fcn.1001cab6
mov dword [0x1060e570], eax
mov dword [0x1060e578], ebx
mov dword [0x1060e580], ebx
mov byte [ebp - 4], 7
mov ecx, 0x1060e578
mov dword [ebp - 0xc4], eax
lea eax, [ebp - 0xc4]
push eax
push 0x10
push ebx
lea eax, [ebp - 0x194]
mov dword [0x1060e58c], 0x3f800000
push eax
mov dword [0x1060e57c], ebx
call fcn.1001c88e
push 0x10064aaa
mov dword [0x1060e584], 7
mov dword [0x1060e588], 8
call fcn.1004e49c
or dword [ebp - 4], 0xffffffff
pop ecx
mov dword [ebp - 0x40], 0xec299e88
mov dword [ebp - 0x18], ebx
jmp 0x10018d9f
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x44], 0xfffffff9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10018d91
mov dword [ebp - 0x18], ebx
jmp 0x10018dba
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1e0], 0xffffffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10018da9
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10018dd9
push 0x11c2
push 0x33a
call dword [sym.imp.GDI32.dll_SetStretchBltMode]
mov eax, dword [ebp - 0x44]
xor ecx, ecx
cmp eax, 0xacd7
mov eax, dword [ebp - 0x44]
setge cl
cmp ecx, 0xfffb
sbb ecx, ecx
xor edx, edx
inc ecx
cmp eax, ecx
setl dl
cmp edx, dword [ebp - 0x44]
jle 0x10018e05
mov eax, edi
cmp dword [ebp - 0x44], ebx
jne 0x10018e07
mov eax, ebx
mov dword [ebp - 0x40], eax
xor edx, edx
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x44]
cmp ecx, eax
setle dl
cmp edx, edi
jle 0x10018e23
cmp dword [ebp - 0x44], ebx
je 0x10018e2a
mov ecx, edi
cmp dword [ebp - 0x44], ebx
jne 0x10018e2c
mov ecx, ebx
mov eax, dword [ebp - 0x44]
sub eax, 0x951a
add eax, ecx
neg eax
sbb eax, eax
add eax, 2
mov dword [ebp - 0x1e0], eax
imul eax, dword [ebp - 0x4c], 0x2710
add eax, dword [ebp - 0x3c]
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x50]
push eax
call fcn.1001a97a
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
test eax, eax
je 0x100190d8
mov dword [ebp - 0x24], 0x79e6
mov dword [ebp - 0x34], 0x5d0d658e
mov dword [ebp - 0x1c], 0x429
cmp dword [ebp - 0x1c], 0x52d
jle 0x10018ef3
mov eax, ebx
mov dword [ebp - 0x20], ebx
mov esi, ebx
mov dword [ebp - 0x34], ebx
mov ecx, esi
mov dword [ebp - 0x3c], ebx
sar eax, cl
mov esi, ebx
mov dword [ebp - 0x30], eax
mov ecx, esi
sar eax, cl
lea ecx, [ebp - 0x248]
cdq
push edx
push eax
call fcn.1000d41a
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10018eb6
mov eax, dword [eax]
push eax
call fcn.1004e4c6
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x248]
call fcn.1001ad06
mov eax, dword [ebp - 0x30]
inc esi
cmp esi, 0x211b
jl 0x10018e9a
mov esi, dword [ebp - 0x34]
mov eax, dword [ebp - 0x20]
inc esi
mov dword [ebp - 0x34], esi
cmp esi, 0x52cd
jl 0x10018e8e
inc eax
mov dword [ebp - 0x20], eax
cmp eax, 0x78cb
jl 0x10018e89
mov dword [ebp - 0x3c], ebx
cmp dword [ebp - 0x1c], 0x1c2
jge 0x10018f0a
push 0x10008938
call fcn.1004e4c6
pop ecx
push 0xfffffffffffffff6
pop eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x20], 0xf84255eb
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x1c], ebx
jmp 0x10018f30
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xcc], 0x73598422
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x10018f1f
mov eax, dword [ebp - 0x24]
xor ecx, ecx
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x24]
cmp eax, edi
mov edx, dword [ebp - 0x24]
setge cl
sub edx, ecx
xor ecx, ecx
sub edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp edx, eax
mov eax, dword [ebp - 0x34]
setl cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setg dl
xor ecx, ecx
cmp eax, edx
setg cl
sub ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x24]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x3c], ecx
xor ecx, ecx
cmp dword [ebp - 0x3c], eax
setle cl
xor edx, edx
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x34]
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setg dl
cmp edx, 0x8461e707
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x20]
setge cl
xor edx, edx
imul ecx, ecx, 0x43cd
cmp ecx, eax
setne dl
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x28], edi
cmp dword [ebp - 0x28], ebx
jl 0x10018ff7
mov dword [ebp - 0x3c], 0xffffffff
xor ecx, ecx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0xcc]
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp + eax*4 - 0xcc]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp + eax*4 - 0xcc]
cmp edx, eax
setle cl
mov dword [ebp - 0x3c], ecx
dec dword [ebp - 0x28]
jns 0x10018fc3
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x34], 0x651328f6
mov dword [ebp - 0x24], 8
mov dword [ebp - 0x3c], 0xfa516694
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x28], 0xfffffff9
mov dword [ebp - 0x20], 0xd1454bcd
mov dword [ebp - 0x40], 0x1b6e
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x18], 0x84ade726
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x1c], ebx
jmp 0x1001904a
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x208], 0x9229a275
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10019039
dec dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x34], eax
jl 0x10019060
cmp dword [ebp - 0x3c], ebx
je 0x10019062
mov ebx, edi
mov eax, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x2c]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
setne dl
sub ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setne dl
xor ecx, ecx
cmp edx, eax
setl cl
xor edx, edx
cmp ebx, ecx
sete dl
xor eax, eax
cmp edx, 0x28217c71
mov dword [ebp - 0x208], edx
setle al
xor ecx, ecx
cmp eax, 0xb243
setg cl
xor eax, eax
test ecx, ecx
setle al
add eax, dword [ebp - 0x2c]
mov dword [ebp - 0x34], eax
dec dword [ebp - 0x18]
jmp 0x1001a5ea
push 2
pop esi
push esi
lea ecx, [ebp - 0x114]
call fcn.1001a8b6
mov dword [ebp - 0x18], ebx
jmp 0x100190fc
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x114]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x100190ec
mov dword [ebp - 0x18], ebx
jmp 0x10019117
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1a0], 0x5f39
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10019106
mov eax, dword [ebp - 0x114]
mov dword [eax], 0xfffffff9
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x30], ebx
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001913f
push ebx
call dword [sym.imp.KERNEL32.dll_ClearCommBreak]
mov dword [ebp - 0x28], ebx
jmp 0x10019161
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp + eax*4 - 0x1a0]
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x1a0], ecx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x30], eax
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], esi
jle 0x10019144
mov eax, dword [ebp - 0x114]
dec dword [eax]
cmp dword [eax], 0xffffffeb
jne 0x10019129
lea ecx, [ebp - 0x114]
call fcn.1001a938
mov eax, dword [0x1060e598]
test al, 2
jne 0x10019215
or eax, esi
mov dword [0x1060e598], eax
push ebx
mov dword [ebp - 4], 0xa
push ebx
mov dword [0x1060e5a0], ebx
mov dword [0x1060e5a4], ebx
call fcn.1001cab6
mov dword [0x1060e5a0], eax
mov dword [0x1060e5a8], ebx
mov dword [0x1060e5b0], ebx
mov byte [ebp - 4], 0xc
mov ecx, 0x1060e5a8
mov dword [ebp - 0xe0], eax
lea eax, [ebp - 0xe0]
push eax
push 0x10
push ebx
lea eax, [ebp - 0x190]
mov dword [0x1060e5bc], 0x3f800000
push eax
mov dword [0x1060e5ac], ebx
call fcn.1001c88e
push 0x10064aa5
mov dword [0x1060e5b4], 7
mov dword [0x1060e5b8], 8
call fcn.1004e49c
or dword [ebp - 4], 0xffffffff
pop ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0xec]
push esi
movdqu xmmword [ebp - 0x74], xmm0
call fcn.1001a8b6
mov dword [ebp - 0x2c], 0xbbda73a1
mov dword [ebp - 0x1c], ebx
jmp 0x10019248
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xec]
mov dword [eax + ecx*4], 7
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x10019235
mov esi, dword [ebp - 0xec]
mov dword [esi + 4], ebx
mov dword [ebp - 0x18], 9
xor ecx, ecx
mov dword [ebp - 0x28], 3
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xec]
cmp dword [eax], edi
mov eax, dword [ebp - 0x18]
setg cl
imul eax, ecx
test eax, eax
jne 0x10019281
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xec]
mov edx, dword [esi + 4]
cmp dword [eax], edi
setl cl
xor eax, eax
cmp dword [esi + 4], ebx
mov dword [ebp - 0x2c], ecx
setle al
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, edx
setle cl
sub ecx, edx
neg ecx
sbb ecx, ecx
add ecx, 0xfffff3f6
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, 9
setg al
add eax, edx
sub eax, dword [ebp - 0x18]
neg eax
sbb eax, eax
inc eax
cmp eax, 0x40f8278b
jle 0x10019363
mov dword [ebp - 0x30], 2
mov dword [ebp - 0x2c], 0xf
cmp dword [ebp - 0x2c], 0xfffffffe
jge 0x1001935c
mov edi, dword [sym.imp.GDI32.dll_CreateFontA]
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001934b
push ebx
push 0xb1f
push 0xc34
push 0xf23
push 0x22f3
push 0x170
push 0x460
push 0xa64
push 0x1b05
push 0x851
push 0xcb0
push 0x1a84
push 0x6d6
push 0xf6e
call edi
cmp dword [ebp - 0x18], ebx
jne 0x10019359
dec dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xfffffffe
jl 0x100192fe
xor edi, edi
inc edi
cmp dword [ebp - 0x30], ebx
jne 0x100193a9
jmp 0x1001939c
mov dword [ebp - 0x18], 0xffffffe5
jmp 0x10019387
mov dword [ebp - 0x34], 0x505ce4ec
mov dword [ebp - 0x28], ebx
jmp 0x1001937e
inc dword [ebp - 0x34]
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0x10
jg 0x10019378
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xe
jle 0x1001936c
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001939c
call dword [sym.imp.USER32.dll_CreateMenu]
inc dword [esi + 4]
cmp dword [esi + 4], 0xd
jl 0x10019256
lea ecx, [ebp - 0xec]
call fcn.1001a938
lea eax, [ebp - 0x4c]
push eax
call fcn.1001a9dc
push 0xfffffffffffffffe
mov eax, dword [eax]
mov dword [ebp - 0x20], 0xf951fe7
mov dword [ebp - 0x34], 0xffffffff
mov dword [ebp - 0x28], eax
mov eax, 0x948708ef
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
pop eax
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0x1c], 0x2aff635
mov dword [ebp - 0x30], 0x7736d0c1
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], 0xed7c3b7c
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], ebx
je 0x10019432
mov eax, edi
cmp dword [ebp - 0x20], ebx
jne 0x10019434
mov eax, ebx
mov dword [ebp - 0x1c], eax
xor edx, edx
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x88]
cmp ecx, eax
mov eax, dword [ebp - 0x8c]
setg dl
xor ecx, ecx
cmp edx, eax
push 0
sete cl
mov dword [ebp - 0x30], ecx
mov ecx, 0xd2668451
mov eax, dword [ebp - 0x84]
cmp ecx, eax
mov ecx, dword [ebp - 0x90]
sbb eax, eax
xor edx, edx
neg eax
cmp eax, 0xe283
mov eax, dword [ebp - 0x20]
setle dl
cmp eax, ecx
pop eax
setge al
sub edx, 4
add eax, edx
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x30], eax
mov eax, dword [ebp - 0xf8]
setne cl
inc dword [ebp - 0xf8]
cmp eax, ecx
mov eax, edi
cmovge eax, ebx
neg eax
add eax, eax
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x18], 0x5aa4
cmp dword [ebp - 0x18], 0x5d36
jle 0x1001950f
mov edi, ebx
mov esi, ebx
mov dword [ebp - 0x30], ebx
lea eax, [esi + edi]
mov ecx, 0x1060d4b8
or eax, ebx
cdq
push edx
push eax
call fcn.1001a685
inc ebx
cmp ebx, 0x43c9
jl 0x100194d5
inc esi
push 0
pop ebx
cmp esi, 0x3bbf
jl 0x100194d2
inc edi
cmp edi, 0x5ec0
jl 0x100194d0
push ebx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
xor edi, edi
inc edi
cmp byte [ebp + 0xc], 0
jne 0x10019520
mov esi, dword [ebp - 0x28]
test esi, esi
jne 0x100197df
mov dword [ebp - 0x2c], 0xfffffffb
lea ecx, [ebp - 0x18c]
mov dword [ebp - 0x34], 0x76ce
mov dword [ebp - 0x30], 0x7b445ace
push 2
call fcn.1001a8b6
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x38], 0xafe44fa3
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x20], 0xffff
mov dword [ebp - 0x1c], ebx
jmp 0x1001956e
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18c]
mov dword [eax + ecx*4], 0xeec299e8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x1001955b
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
sub eax, dword [ebp - 0x2c]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
imul eax, eax, 0x53bc
cmp eax, 0xeec54165
setne cl
mov dword [ebp - 0x34], ecx
cmp dword [ebp - 0x2c], ebx
jne 0x100195b1
mov eax, dword [ebp - 0x20]
mov ecx, ebx
mov eax, dword [ebp - 0x34]
inc dword [ebp - 0x20]
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x2c], 0xfffe
jne 0x100195b3
mov ecx, edi
xor eax, eax
cmp ecx, edi
lea ecx, [ebp - 0x18c]
setge al
mov dword [ebp - 0x30], eax
call fcn.1001a938
mov dl, byte [ebp + 0xc]
lea eax, [ebp - 0x2a0]
mov ecx, dword [ebp - 0x4c]
push eax
call fcn.1000d495
mov esi, eax
lea edi, [ebp - 0x74]
pop ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x24], 0xe8cff0ea
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x34], 0x99d94b4b
mov dword [ebp - 0x24], ebx
jmp 0x10019602
cmp dword [ebp - 0x30], ebx
jne 0x10019608
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffff
jl 0x100195fa
push 4
mov dword [ebp - 0x24], 0xffffffe3
pop esi
jmp 0x10019655
push esi
lea ecx, [ebp - 0x164]
call fcn.1001a8b6
mov dword [ebp - 0x1c], ebx
jmp 0x10019634
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x164]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x10019625
mov eax, dword [ebp - 0x164]
mov ecx, dword [eax + 4]
mov dword [eax], ecx
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x164]
call fcn.1001a938
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
je 0x10019614
cmp byte [ebp + 0xc], 0
je 0x100197d9
cmp dword [ebp - 0x6c], 0
je 0x100197d9
xor edi, edi
mov dword [ebp - 0x24], 0x2e91a04
inc edi
lea ecx, [ebp - 0x134]
mov dword [ebp - 0x20], edi
push 2
call fcn.1001a8b6
mov dword [ebp - 0x1c], ebx
jmp 0x100196a0
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x134]
mov dword [eax + ecx*4], 0xfffffff8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x1001968d
mov dword [ebp - 0x24], edi
cmp dword [ebp - 0x24], 0x14
jg 0x10019775
mov eax, 0x9dcee34e
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x34], 0x74edf0eb
mov dword [ebp - 0x30], edi
mov eax, dword [ebp - 0x98]
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
imul eax, dword [ebp - 0x24]
sub eax, 0x25db2b05
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0x68de
mov eax, dword [ebp - 0x24]
setle cl
sub ecx, 0xa97f51ef
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0xa0]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, esi
setge al
cmp eax, esi
jl 0x10019747
mov eax, ebx
cmp dword [ebp - 0x20], ebx
je 0x10019749
mov eax, edi
cmp eax, dword [ebp - 0x98]
jl 0x1001975e
mov eax, dword [ebp - 0x134]
cmp dword [eax + 4], ebx
mov eax, ebx
je 0x10019760
mov eax, edi
mov dword [ebp - 0x30], eax
mov eax, 0x9dcee34e
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x14
jle 0x100196b8
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10019786
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
lea ecx, [ebp - 0x134]
call fcn.1001a938
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x38], 0xea75c96d
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
mov dword [ebp - 0x7c], eax
je 0x100197bc
push 0xb95
push 0x239c
push 0x2cd
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x100197d1
push ebx
push 0x698
call dword [sym.imp.USER32.dll_ValidateRect]
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x78], eax
jmp 0x100197dc
xor edi, edi
inc edi
mov esi, dword [ebp - 0x28]
mov dword [ebp - 4], 0xd
cmp dword [ebp - 0x18], 0x596c
jge 0x100197fe
mov edx, 0x10008970
mov ecx, 0x1060d4b8
call fcn.1001cb90
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x38], ebx
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10019817
push ebx
push ebx
push ebx
call dword [sym.imp.OLEAUT32.dll_SysStringByteLen]
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001982a
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_RegGetKeySecurity]
test esi, esi
jne 0x1001a186
cmp dword [ebp - 0x74], esi
jle 0x1001a186
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x1c], ebx
jmp 0x1001987b
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x48], edi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x10019871
mov dword [ebp - 0x2c], 0xc
cmp dword [ebp - 0x2c], 0x16
jge 0x10019a2a
push 3
lea ecx, [ebp - 0x158]
call fcn.1001a8b6
mov dword [ebp - 4], 0xf
mov dword [ebp - 0x24], ebx
jmp 0x100198bd
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x158]
mov dword [eax + ecx*4], 0x53bc
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jl 0x100198aa
mov dword [ebp - 0x24], ebx
jmp 0x100198d5
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x1f0], edi
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 4
jl 0x100198c8
dec dword [ebp - 0x18]
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], ebx
jg 0x10019a13
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x24], ebx
jmp 0x1001996b
mov dword [ebp - 0x1c], 0x4401d1b9
mov dword [ebp - 0x1c], ebx
jmp 0x10019963
push 4
lea ecx, [ebp - 0x140]
call fcn.1001a8b6
mov dword [ebp - 0x20], ebx
jmp 0x10019923
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x140]
mov dword [eax + ecx*4], 7
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x10019910
mov ecx, dword [ebp - 0x140]
mov dword [ecx + 4], ebx
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x48], ebx
jne 0x10019944
inc dword [ecx + 4]
cmp dword [ecx + 4], 2
jle 0x10019932
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x48]
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1e4], ecx
lea ecx, [ebp - 0x140]
call fcn.1001a938
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jle 0x100198fe
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jle 0x100198f2
mov dword [ebp - 0x34], 0x58f8
cmp dword [ebp - 0x34], 0x5c83
jle 0x100199a9
mov esi, ebx
mov edi, ebx
lea eax, [edi + esi]
mov ecx, 0x1060d4b8
cdq
push edx
push eax
call fcn.1001a685
inc edi
cmp edi, 0x6673
jl 0x10019984
inc esi
cmp esi, 0x37fa
jl 0x10019982
xor edi, edi
inc edi
mov dword [ebp - 0x24], ebx
jmp 0x100199c1
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x158]
mov dword [eax + ecx*4], 0xfffffffa
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jl 0x100199ae
mov byte [ebp - 4], 0x10
cmp dword [ebp - 0x34], 0x567e
jge 0x10019a04
mov edx, 0x100089c4
mov ecx, 0x1060d4b8
call fcn.1001cb90
jmp 0x10019a04
mov dword [ebp - 4], 0xf
inc dword [ebp - 0x18]
jmp 0x100198e1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x158]
call fcn.1001a938
inc dword [ebp - 0x2c]
jmp 0x10019887
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 0x1c
jg 0x10019b75
mov dword [ebp - 0x20], 0xfffffff8
mov dword [ebp - 0x30], 0x229f
cmp dword [ebp - 0x30], 0x22bb
jle 0x10019ab5
mov dword [ebp - 0x24], ebx
mov ecx, ebx
mov dword [ebp - 0x34], 0x55d3
mov dword [ebp - 0x1c], ecx
mov esi, ebx
mov eax, ecx
mov ecx, esi
shl eax, cl
lea ecx, [ebp - 0x290]
cdq
push edx
push eax
call fcn.1000d41a
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10019a7d
mov eax, dword [eax]
push eax
call fcn.1004e4c6
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x290]
call fcn.1001ad06
mov ecx, dword [ebp - 0x1c]
inc esi
cmp esi, 0x666f
jl 0x10019a5f
mov eax, dword [ebp - 0x24]
add ecx, eax
dec dword [ebp - 0x34]
mov dword [ebp - 0x1c], ecx
jne 0x10019a5d
inc eax
mov dword [ebp - 0x24], eax
cmp eax, 0x1ef3
jl 0x10019a51
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x30], 0x1f99
jge 0x10019acc
push 0x10008a14
call fcn.1004e4c6
pop ecx
or dword [ebp - 4], 0xffffffff
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10019ae0
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileType]
mov esi, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x48]
neg esi
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
sbb esi, esi
mov eax, dword [ebp - 0x48]
xor edx, edx
mov eax, dword [ebp - 0x20]
neg esi
cmp eax, 0x12fd
mov eax, dword [ebp - 0x2c]
setl dl
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
add eax, 0x7eed
cmp eax, dword [ebp - 0x1c]
jl 0x10019b23
mov eax, edi
cmp dword [ebp - 0x48], ebx
jne 0x10019b25
mov eax, ebx
mov edx, dword [ebp - 0x38]
xor ecx, ecx
add edx, eax
cmp esi, edi
setge cl
xor eax, eax
cmp ecx, edx
setge al
cmp eax, 0xffffffff
jle 0x10019b44
mov edx, ebx
cmp dword [ebp - 0x48], ebx
je 0x10019b46
mov edx, edi
mov eax, dword [ebp - 0x48]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setl cl
xor edx, edx
cmp ecx, 8
setge dl
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, 3
setge al
mov dword [ebp - 0x1c], eax
inc dword [ebp - 0x18]
jmp 0x10019a2d
mov dword [ebp - 0x18], 0xfffffff9
mov dword [ebp - 0x20], 0xce96f8f
mov dword [ebp - 0x30], 0xe81d534a
mov dword [ebp - 0x20], ebx
jmp 0x10019ba0
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x1d4], 0xd1649bc0
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x10019b8f
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp eax, edi
setge cl
sub ecx, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
inc ecx
sub ecx, dword [ebp - 0x18]
cmp ecx, dword [ebp - 0x18]
jle 0x10019bd0
mov ecx, edi
cmp dword [ebp - 0x18], ebx
jne 0x10019bd2
mov ecx, ebx
mov eax, dword [ebp - 0x18]
xor edx, edx
imul eax, ecx
neg eax
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
add ecx, 0xffff
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setne dl
add eax, edx
mov dword [ebp - 0x1d4], eax
jne 0x10019c04
mov eax, ebx
cmp dword [ebp - 0x18], ebx
je 0x10019c06
mov eax, edi
add eax, 0xfbd1
je 0x10019c14
mov eax, edi
cmp dword [ebp - 0x20], ebx
jne 0x10019c16
mov eax, ebx
mov dword [ebp - 0x30], eax
xor edx, edx
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setge dl
xor ecx, ecx
cmp edx, eax
setl cl
cmp dword [ebp - 0x18], ecx
jl 0x10019c4a
mov dword [ebp - 0x30], 0x87a9b65c
dec dword [ebp - 0x30]
jmp 0x10019c5e
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10019c5e
push 0x1d37
call dword [sym.imp.USER32.dll_IsWindow]
mov eax, 0x462d5e48
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x58], ebx
jmp 0x10019c9e
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10019c8b
push 0x228c
call dword [sym.imp.KERNEL32.dll_IsProcessorFeaturePresent]
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x10019c9b
push ebx
call dword [sym.imp.KERNEL32.dll_GetTimeZoneInformation]
inc dword [ebp - 0x58]
cmp dword [ebp - 0x58], 0x1d
jg 0x10019c77
mov dword [ebp - 0x20], ebx
jmp 0x10019cb9
mov dword [ebp - 0x38], 0x3707
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x5c], eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
je 0x10019ca9
mov dword [ebp - 0x18], 0xfffffff6
mov eax, 0xe2e4e
mov dword [ebp - 0x34], 0x7b1891f7
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0x30], 0xc3e5f885
mov dword [ebp - 0x38], 0x7a832397
mov dword [ebp - 0x18], ebx
jmp 0x10019dc2
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x30], 0x37d437f1
mov dword [ebp - 0x20], 0x236511f0
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
je 0x10019d5b
cmp dword [ebp - 0x18], ebx
je 0x10019d27
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xb8]
xor ecx, ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp eax, 0x1edb6b7b
mov eax, dword [ebp - 0x24]
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xb4]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, edi
setg cl
cmp ecx, dword [ebp - 0x18]
jge 0x10019d5d
mov eax, ebx
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x18]
sub ecx, 0x53d2
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x34]
setl dl
xor ecx, ecx
cmp edx, eax
setle cl
sub ecx, 0x4d92
cmp ecx, dword [ebp - 0xb8]
je 0x10019d93
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0xb8]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0xb8], ebx
mov dword [ebp - 0x30], 0xf851f08a
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
setne dl
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x20]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x16
jg 0x10019cff
mov byte [ebp - 0x11], bl
mov dword [ebp - 0x30], 0x4324
cmp dword [ebp - 0x30], 0x4347
jle 0x10019e11
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov esi, ebx
mov edi, ebx
mov ecx, edi
mov eax, esi
shl eax, cl
mov ecx, 0x1060d4b8
cdq
push edx
push eax
call fcn.1001a685
inc edi
cmp edi, 0x40df
jl 0x10019de9
inc esi
cmp esi, 0x883
jl 0x10019de7
xor edi, edi
inc edi
cmp byte [ebp - 0x11], 0
je 0x10019e25
push ebx
push ebx
push 0x10fb
push ebx
call dword [sym.imp.USER32.dll_SetMenuItemInfoW]
mov dword [ebp - 4], 0x14
cmp dword [ebp - 0x30], 0x41f0
jge 0x10019e44
mov edx, 0x10008a64
mov ecx, 0x1060d4b8
call fcn.1001cb90
or dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x70], 0
je 0x1001a186
cmp dword [ebp - 0x74], 0
je 0x1001a186
mov dword [ebp - 0x2c], 0x3a10
cmp dword [ebp - 0x2c], 0x3c82
jle 0x10019efc
mov dword [ebp - 0x1c], ebx
mov ecx, ebx
mov dword [ebp - 0x34], 0x3949
mov dword [ebp - 0x20], ecx
mov esi, ebx
mov dword [ebp - 0x30], ebx
mov edx, ecx
mov dword [ebp - 0x38], ebx
mov ecx, esi
mov esi, ebx
shl edx, cl
mov dword [ebp - 0x28], edx
mov eax, esi
lea ecx, [ebp - 0x278]
xor eax, edx
cdq
push edx
push eax
call fcn.1000d41a
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10019eae
mov eax, dword [eax]
push eax
call fcn.1004e4c6
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x278]
call fcn.1001ad06
mov edx, dword [ebp - 0x28]
inc esi
cmp esi, 0x1d47
jl 0x10019e92
mov esi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x20]
inc esi
mov dword [ebp - 0x30], esi
cmp esi, 0x15c2
jl 0x10019e84
mov eax, dword [ebp - 0x1c]
add ecx, eax
dec dword [ebp - 0x34]
mov dword [ebp - 0x20], ecx
jne 0x10019e7f
inc eax
mov dword [ebp - 0x1c], eax
cmp eax, 0x5d2a
jl 0x10019e73
mov dword [ebp - 0x1c], 0xfffe
cmp dword [ebp - 0x2c], 0x37c0
jge 0x10019f17
push 0x10008ad0
call fcn.1004e4c6
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x28], 0x3d42
mov dword [ebp - 0x30], 0xfffffffd
mov dword [ebp - 0x20], 0x69ac54c9
mov dword [ebp - 0x34], 0xffffffff
mov dword [ebp - 0x2c], 8
mov dword [ebp - 0x20], ebx
jmp 0x10019f7c
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x218], 0xdb956746
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x10019f6b
mov esi, dword [ebp - 0x30]
mov eax, dword [ebp - 0x28]
neg esi
sbb esi, esi
xor ecx, ecx
neg esi
cmp eax, edi
mov eax, dword [ebp - 0x1c]
setl cl
xor edx, edx
cmp eax, ecx
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
setl dl
imul ecx, esi
mov dword [ebp - 0x38], edx
xor edx, edx
cmp ecx, eax
setg dl
xor eax, eax
cmp dword [ebp - 0x38], edx
setne al
add eax, dword [ebp - 0x1c]
je 0x10019fc6
mov ecx, edi
cmp dword [ebp - 0x30], ebx
jne 0x10019fc8
mov ecx, ebx
push 0xfffffffffffffff6
pop eax
cmp eax, ecx
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x28], 0xfffffffb
jmp 0x1001a091
mov dword [ebp - 0xb0], edi
mov dword [ebp - 0xac], edi
mov dword [ebp - 0xa8], edi
mov dword [ebp - 0xa4], edi
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0xa8]
cmp dword [ebp - 0x1c], eax
jl 0x1001a00f
mov eax, ebx
cmp dword [ebp - 0xa8], ebx
je 0x1001a011
mov eax, edi
xor edx, edx
test eax, eax
mov eax, dword [ebp - 0x28]
sets dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, edi
setge al
xor edx, edx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x34]
cmp eax, ecx
setge dl
cmp edx, dword [ebp - 0x20]
jle 0x1001a04b
mov edx, edi
cmp dword [ebp - 0xac], ebx
jne 0x1001a04d
mov edx, ebx
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x218]
sete cl
sub ecx, eax
mov eax, dword [ebp - 0x2c]
sub ecx, eax
xor eax, eax
add ecx, dword [ebp - 0x20]
cmp ecx, edi
setge al
mov dword [ebp - 0xa8], eax
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001a08e
push 0x1374
push 0xdbd
push ebx
call dword [sym.imp.USER32.dll_OffsetRect]
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0xffffffe6
jg 0x10019fdf
mov ecx, dword [ebp - 0x70]
call fcn.1001885e
mov dword [ebp - 0x24], 0x36544d18
lea ecx, [ebp - 0x170]
mov esi, eax
mov dword [ebp - 0x30], 0x7e318b47
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x1c], edi
push edi
mov dword [ebp - 0x28], esi
call fcn.1001a8b6
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x20], ebx
jmp 0x1001a0e7
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x170]
mov dword [eax + ecx*4], 0x2e7c650b
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x1001a0d4
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jne 0x1001a146
mov eax, dword [ebp - 0x24]
xor edx, edx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
setg dl
xor eax, eax
cmp edx, 0x91e60e77
setne al
sub eax, 0x1b9c
add eax, dword [ebp - 0x24]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0xeb2d
mov eax, dword [ebp - 0x24]
setg cl
xor edx, edx
cmp ecx, eax
setle dl
add edx, dword [ebp - 0x30]
sub edx, dword [ebp - 0x30]
neg edx
sbb edx, edx
add edx, 0xb5a7dd9b
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
cmp eax, 0xd33b
setle cl
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x170]
mov dword [eax], ecx
lea ecx, [ebp - 0x170]
call fcn.1001a938
lea eax, [ebp - 0x4c]
push eax
call fcn.1001a9dc
mov dword [eax], esi
mov dword [ebp - 0x20], 4
mov dword [ebp - 0x38], 0x9fb37b04
mov dword [ebp - 0x20], 0x11
jmp 0x1001a1d2
mov dword [ebp - 0x1c], 0x67215912
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001a1b5
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_SetCommTimeouts]
mov ecx, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setl dl
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x38], ecx
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xffffffff
jle 0x1001a19d
mov dword [ebp - 0x34], 0x16d0
cmp dword [ebp - 0x34], 0x1a7e
jle 0x1001a247
push ebx
push 0x1c22
push 0x1be8
push 0x1956
call dword [sym.imp.KERNEL32.dll_RaiseException]
lea ecx, [ebp - 0x74]
call fcn.10014ab0
mov dword [ebp - 4], 0x18
cmp dword [ebp - 0x34], 0x1356
jge 0x1001a26e
mov edx, 0x10008b08
mov ecx, 0x1060d4b8
call fcn.1001cb90
or dword [ebp - 4], 0xffffffff
mov esi, dword [ebp - 0x28]
mov dword [ebp - 0x2c], 0xfffffffe
mov dword [ebp - 0x2c], ebx
jmp 0x1001a2c0
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001a2bd
push ebx
push ebx
push 0x7fa
push ebx
call dword [sym.imp.KERNEL32.dll_GetFullPathNameW]
dec dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xffffffee
jl 0x1001a2a6
cmp dword [ebp - 0x40], 0
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
jne 0x1001a530
test esi, esi
je 0x1001a530
mov edx, dword [ebp - 0x3c]
mov ecx, esi
call fcn.10018885
mov dword [ebp - 0x18], 0x184c506d
mov esi, eax
mov eax, 0x7c8a6b95
mov dword [ebp - 0x80], esi
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x17c], eax
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x174], eax
mov dword [ebp - 0x40], ebx
cmp dword [ebp - 0x18], 0x4182
jne 0x1001a4e7
push dword [ebp + 8]
movdqa xmm0, xmmword [0x1000bff0]
lea eax, [ebp - 0x1a0]
push eax
lea eax, [ebp - 0x1b0]
mov dword [ebp - 0x1c], 3
push eax
mov dword [ebp - 0x3c], ebx
lea ecx, [ebp - 0xdc]
push ebx
movdqu xmmword [ebp - 0x1b0], xmm0
mov dword [ebp - 0xdc], ebx
mov dword [ebp - 0xd8], ebx
mov dword [ebp - 0xd4], ebx
call fcn.1001d2b3
mov dword [ebp - 4], 0x1a
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x30], 0xc650ba43
push edi
call fcn.1001a8b6
mov dword [ebp - 0x20], ebx
jmp 0x1001a39c
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14c]
mov dword [eax + ecx*4], 0x7721ca7b
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x1001a389
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001a3b6
push ebx
push 0x1eff
call dword [sym.imp.GDI32.dll_SelectClipRgn]
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 3
jg 0x1001a4cb
mov esi, dword [ebp - 0xdc]
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x20], 8
mov dword [ebp - 0x24], ebx
jmp 0x1001a3ed
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x11c], 0x88f4f368
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x1001a3dc
mov dword [ebp - 0x24], ebx
jmp 0x1001a409
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x1c8], 0x3279329b
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jl 0x1001a3f8
cmp dword [ebp - 0x2c], ebx
jne 0x1001a456
mov eax, dword [ebp - 0x1c]
mov edx, ebx
cmp dword [ebp - 0x40], ebx
je 0x1001a420
mov edx, edi
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
cmp edx, eax
setge cl
xor edx, edx
test ecx, ecx
setns dl
sub edx, dword [ebp - 0x118]
mov eax, dword [ebp - 0x18]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov edx, ebx
setne cl
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x3c]
jne 0x1001a458
mov edx, edi
mov ecx, dword [ebp - 0x118]
mov dword [ebp - 0x178], ecx
mov eax, dword [ebp - 0x1c]
imul eax, edx
cmp ecx, eax
jge 0x1001a475
mov edx, ebx
cmp dword [ebp - 0x20], ebx
je 0x1001a477
mov edx, edi
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x40]
setge cl
mov dword [esi + 4], ecx
cmp dword [ebp - 0x1c4], ebx
jne 0x1001a496
mov eax, ebx
cmp dword [ebp - 0x2c], ebx
je 0x1001a498
mov eax, edi
imul eax, eax, 0x5c12
cmp eax, edi
mov eax, dword [ebp - 0x1c]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setle cl
mov dword [ebp - 0x30], ecx
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x14c]
mov dword [eax], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jle 0x1001a3c9
mov esi, dword [ebp - 0x80]
lea ecx, [ebp - 0x14c]
call fcn.1001a938
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xdc]
call fcn.1001a938
jmp 0x1001a525
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001a4fd
push ebx
push 0x4b5
push ebx
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov dword [ebp - 0x18], ebx
jmp 0x1001a51f
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001a51c
push 0x12a3
push ebx
push 0x1b09
call dword [sym.imp.USER32.dll_GetWindowTextA]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jle 0x1001a502
lea eax, [ebp - 0x50]
push eax
call fcn.1001a97a
mov dword [eax], esi
mov dword [ebp - 0x18], 0xfffffffe
mov dword [ebp - 0x20], 0xcd333563
mov dword [ebp - 0x1c], 0x99740826
mov dword [ebp - 0x38], 4
mov dword [ebp - 0x38], 0xfffffffc
mov dword [ebp - 0x20], ebx
jmp 0x1001a569
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xd0], 0x7be2d3d4
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x1001a558
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x1001a582
push 0x8de
call dword [sym.imp.GDI32.dll_GetStockObject]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
imul eax, dword [ebp - 0x18]
test eax, eax
jne 0x1001a5b9
cmp dword [ebp - 0x1c], ebx
je 0x1001a5bb
mov ebx, edi
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp ebx, eax
setge cl
add ecx, 0xe467
mov dword [ebp - 0x38], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x20]
imul edx, eax, 0x6df2
mov dword [ebp - 0xd0], edx
mov eax, dword [ebp - 0x18]
cmp edx, eax
setne cl
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp + 8]
lea esi, [ebp - 0x80]
mov ecx, dword [ebp - 0xc]
mov edi, eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret