Function at 0x1003cfcb
Capabilities:
Create thread
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10067dbf
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1e0
mov eax, dword [0x11f696b0]
push ebx
push esi
xor esi, esi
mov dword [esp + 0x38], ecx
push edi
mov edi, edx
inc esi
xor ebx, ebx
mov dword [esp + 0x10c], edi
test al, 1
jne 0x1003d034
or eax, esi
mov dword [0x11f696b0], eax
mov dword [esp + 0x1f4], ebx
call fcn.1003e707
push 0x1006834c
call fcn.1004e37f
or dword [esp + 0x1f8], 0xffffffff
pop ecx
mov ecx, dword [esp + 0x3c]
imul eax, ecx, 0x2710
add eax, edi
mov dword [esp + 0x7c], eax
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], 0xfffffffb
mov dword [esp + 0x10], ebx
jmp 0x1003d065
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0x114], 3
inc dword [esp + 0x10]
cmp dword [esp + 0x10], esi
jl 0x1003d052
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x1003d085
push ebx
push ebx
push 0x467
push ebx
push ebx
call dword [sym.imp.USER32.dll_CreateDialogParamA]
mov eax, dword [esp + 0x114]
mov dword [esp + 0x24], 0xf1bf506e
mov eax, dword [esp + 0x24]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x7c]
push eax
call fcn.1003e774
mov eax, dword [eax]
test eax, eax
je 0x1003d167
mov dword [esp + 0xc], 0x26bdde0b
mov dword [esp + 0x20], 0xb63e8e1b
mov dword [esp + 0xfc], eax
mov dword [esp + 0xc], ebx
jmp 0x1003d157
push esi
lea ecx, [esp + 0xc8]
call fcn.10026bf9
mov dword [esp + 0x10], 0x210b999f
mov dword [esp + 0x10], ebx
jmp 0x1003d0fe
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
or dword [eax + ecx*4], 0xffffffff
inc dword [esp + 0x10]
cmp dword [esp + 0x10], esi
jl 0x1003d0eb
mov dword [esp + 0x10], ebx
cmp dword [esp + 0x10], ebx
jl 0x1003d124
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc4]
cmp dword [ecx + eax*4], ebx
jne 0x1003d12b
dec dword [esp + 0x10]
jns 0x1003d10e
mov ecx, dword [esp + 0xc4]
mov dword [esp + 0x20], 0xd00585b7
test ecx, ecx
je 0x1003d153
push ecx
call fcn.1004e579
pop ecx
mov dword [esp + 0xc4], ebx
mov dword [esp + 0xc8], ebx
mov dword [esp + 0xcc], ebx
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 7
jl 0x1003d0d0
jmp 0x1003e4b6
mov eax, dword [0x11f696b0]
test al, 2
jne 0x1003d207
or eax, 2
mov dword [0x11f696b0], eax
push ebx
mov dword [esp + 0x1f8], esi
push ebx
mov dword [0x11f696c0], ebx
mov dword [0x11f696c4], ebx
call fcn.1003229d
mov dword [0x11f696c0], eax
mov dword [0x11f696c8], ebx
mov dword [0x11f696d0], ebx
mov byte [esp + 0x1f4], 3
mov ecx, 0x11f696c8
mov dword [esp + 0x110], eax
lea eax, [esp + 0x110]
push eax
push 0x10
push ebx
lea eax, [esp + 0x58]
mov dword [0x11f696dc], 0x3f800000
push eax
mov dword [0x11f696cc], ebx
call fcn.10032041
push 0x10068347
mov dword [0x11f696d4], 7
mov dword [0x11f696d8], 8
call fcn.1004e37f
or dword [esp + 0x1f8], 0xffffffff
pop ecx
lea eax, [esp + 0x3c]
xorps xmm0, xmm0
push eax
movdqu xmmword [esp + 0xf0], xmm0
call fcn.1003e7d6
mov edi, dword [eax]
mov al, byte [ebp + 0xc]
mov dword [esp + 0x30], edi
test al, al
jne 0x1003d232
test edi, edi
jne 0x1003d45d
lea ecx, [esp + 0x1d8]
mov dl, al
push ecx
mov ecx, dword [esp + 0x40]
call fcn.10032d92
mov esi, eax
lea edi, [esp + 0xf0]
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]
xor esi, esi
inc esi
cmp byte [ebp + 0xc], 0
je 0x1003d459
cmp dword [esp + 0xf4], 0
je 0x1003d459
mov dword [esp + 0x10], esi
mov dword [esp + 0x1c], 0x52f67d50
push 4
mov dword [esp + 0x28], 0x7ab6dad8
mov dword [esp + 0x10], ebx
pop ecx
jmp 0x1003d29a
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0x16c], ebx
inc dword [esp + 0xc]
cmp dword [esp + 0xc], ecx
jl 0x1003d28b
mov dword [esp + 0xc], ebx
jmp 0x1003d2b9
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0x1bc], 0x9e3d
inc dword [esp + 0xc]
cmp dword [esp + 0xc], ecx
jl 0x1003d2a6
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x10]
jle 0x1003d2d9
mov dword [esp + 0x1c], 0x66a9
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x10]
cmp dword [esp + 0x1c], 0x1fd9d089
jne 0x1003d2e9
cmp dword [esp + 0x10], ebx
jne 0x1003d2ed
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x10]
xor edx, edx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x24]
cmp ecx, eax
setge dl
mov dword [esp + 0x178], edx
mov eax, dword [esp + 0x1c8]
mov dword [esp + 0x178], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 0xc], 0xfaaaeb9a
mov dword [esp + 0x24], 0xffffffff
mov dword [esp + 0x1c], 0x2633
mov dword [esp + 0x20], 7
mov dword [esp + 0x100], eax
mov dword [esp + 0x14], ebx
jmp 0x1003d360
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0x15c], 0xfffffffe
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 4
jl 0x1003d34d
mov dword [esp + 0x14], ebx
jmp 0x1003d380
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0x148], 0xfff8
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 3
jl 0x1003d36d
mov dword [esp + 0x14], ebx
jmp 0x1003d3a0
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0x118], 0x8de905f4
inc dword [esp + 0x14]
cmp dword [esp + 0x14], esi
jl 0x1003d38d
mov eax, dword [esp + 0xc]
mov ecx, 0x7ea4c570
sub ecx, eax
cmp ecx, dword [esp + 0xc]
jl 0x1003d3bb
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0xc]
mov dword [esp + 0x15c], eax
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0x164]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0xc]
neg ecx
sbb ecx, ecx
neg ecx
add eax, ecx
je 0x1003d3ef
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x1c]
xor edx, edx
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x150]
mov eax, dword [esp + 0x15c]
cmp eax, ecx
setg dl
mov dword [esp + 0x118], edx
xor edx, edx
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x1c]
cmp ecx, eax
setge dl
xor ecx, ecx
imul edx, dword [esp + 0x24]
mov eax, dword [esp + 0xc]
cmp eax, edx
setg cl
sub ecx, dword [esp + 0xc]
add ecx, dword [esp + 0x150]
mov eax, dword [esp + 0xf4]
neg ecx
mov dword [esp + 0x104], eax
sbb ecx, ecx
neg ecx
mov dword [esp + 0x20], ecx
mov edi, dword [esp + 0x30]
push esi
lea ecx, [esp + 0xbc]
call fcn.10026bf9
mov dword [esp + 0x1c], 0xb0b02971
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x2c], 0xb9876427
mov dword [esp + 0x2c], 4
mov dword [esp + 0x2c], 0xfffffffc
mov dword [esp + 0x2c], esi
mov dword [esp + 0x10], ebx
jmp 0x1003d4ab
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0xb8]
or dword [eax + ecx*4], 0xffffffff
inc dword [esp + 0x10]
cmp dword [esp + 0x10], esi
jl 0x1003d498
mov dword [esp + 0x1c], ebx
cmp dword [esp + 0x1c], ebx
jl 0x1003d5a1
mov dword [esp + 0x2c], 0x4c975158
mov dword [esp + 0x20], 0x2509e71b
mov dword [esp + 0xc], ebx
jmp 0x1003d4e8
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0x13c], 0x8114768c
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 3
jl 0x1003d4d5
mov dword [esp + 0xc], ebx
jmp 0x1003d508
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0x19c], 4
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 4
jl 0x1003d4f5
mov dword [esp + 0x13c], ebx
cmp dword [esp + 0x13c], ebx
jl 0x1003d597
mov dword [esp + 0x10], 0x8f3c34ee
mov dword [esp + 0xc], 0xfffffffd
mov dword [esp + 0x2c], 0x4207647f
mov dword [esp + 0x2c], esi
mov dword [esp + 0x10], ebx
jmp 0x1003d578
mov dword [esp + 0x2c], esi
dec dword [esp + 0x1a8]
mov dword [esp + 0xc], ebx
jmp 0x1003d56e
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x1003d56a
push ebx
push ebx
push 0x683
call dword [sym.imp.USER32.dll_SetPropA]
inc dword [esp + 0xc]
cmp dword [esp + 0xc], ebx
jle 0x1003d552
inc dword [esp + 0x10]
cmp dword [esp + 0x10], ebx
jle 0x1003d541
mov dword [esp + 0xc], ebx
imul eax, dword [esp + 0xc], 0x51ef
mov dword [esp + 0x20], eax
dec dword [esp + 0x13c]
jns 0x1003d51f
dec dword [esp + 0x1c]
jns 0x1003d4bf
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x1003d5f1
push ebx
push 0x18df
push 0x1153
push 0x734
push 0x4ec
push 0x460
push 0x24d8
push 0x1821
push 0xedb
push 0x24
push 0x12dd
push 0x1ff3
push 0x230c
push 0xde2
call dword [sym.imp.GDI32.dll_CreateFontA]
cmp dword [esp + 0xb8], 0
je 0x1003d61d
push dword [esp + 0xb8]
call fcn.1004e579
pop ecx
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], ebx
mov dword [esp + 0xc0], ebx
test edi, edi
jne 0x1003e1ff
cmp dword [esp + 0xec], edi
jle 0x1003e1ff
push esi
lea ecx, [esp + 0xa8]
call fcn.10026bf9
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 0x10], ebx
jmp 0x1003d663
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0xa4]
mov dword [eax + ecx*4], 0x6847dfa8
inc dword [esp + 0x10]
cmp dword [esp + 0x10], esi
jl 0x1003d64d
mov dword [esp + 0xc], ebx
cmp dword [esp + 0xc], ebx
jl 0x1003d698
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x1003d692
push ebx
push 0x24e7
push ebx
push ebx
push 0x178
push ebx
call dword [sym.imp.KERNEL32.dll_CreateThread]
dec dword [esp + 0xc]
jns 0x1003d673
mov dword [esp + 0xc], ebx
cmp dword [esp + 0xc], ebx
jl 0x1003d6d7
mov dword [esp + 0x10], 0xfffffffd
mov dword [esp + 0x10], ebx
jmp 0x1003d6cb
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0xa4]
mov eax, dword [ecx + eax*4]
neg eax
mov dword [ecx + edx*4], eax
inc dword [esp + 0x10]
cmp dword [esp + 0x10], ebx
jle 0x1003d6b0
dec dword [esp + 0xc]
jns 0x1003d6a2
cmp dword [esp + 0xa4], 0
je 0x1003d703
push dword [esp + 0xa4]
call fcn.1004e579
pop ecx
mov dword [esp + 0xa4], ebx
mov dword [esp + 0xa8], ebx
mov dword [esp + 0xac], ebx
movdqa xmm0, xmmword [0x10007ec0]
lea eax, [esp + 0x19c]
push 0xfffffffffffffff8
pop edi
push dword [esp + 0x4c]
mov dword [esp + 0x18], 0xac204e2d
lea ecx, [esp + 0x9c]
push eax
lea eax, [esp + 0x194]
mov dword [esp + 0x2c], edi
push eax
mov dword [esp + 0x2c], 0xa64b00f5
push ebx
movdqu xmmword [esp + 0x19c], xmm0
mov dword [esp + 0xa8], ebx
mov dword [esp + 0xac], ebx
mov dword [esp + 0xb0], ebx
call fcn.1002c30d
mov dword [esp + 0x1f4], 4
mov dword [esp + 0x34], 0xfffffff6
mov dword [esp + 0x2c], 0x31781fa8
mov dword [esp + 0x14], 0xffffffeb
jmp 0x1003da2b
push dword [esp + 0x4c]
movdqa xmm0, xmmword [0x10007f00]
lea eax, [esp + 0x190]
push eax
lea eax, [esp + 0x184]
mov dword [esp + 0x48], ebx
push eax
push ebx
lea ecx, [esp + 0x50]
mov dword [esp + 0x54], ebx
movdqu xmmword [esp + 0x18c], xmm0
mov dword [esp + 0x58], ebx
call fcn.1002c30d
mov byte [esp + 0x1f4], 5
mov dword [esp + 0xc], ebx
mov dword [esp + 0x1c], 0xa5c12bbf
mov dword [esp + 0x28], 0x2d48012c
mov dword [esp + 0xc], ebx
jmp 0x1003d955
mov dword [esp + 0x28], 0xaec51ac0
mov dword [esp + 0x24], edi
mov dword [esp + 0x10], ebx
jmp 0x1003d80e
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0x11c], 0xa9576c3a
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 4
jl 0x1003d7fb
mov dword [esp + 0x124], 3
cmp dword [esp + 0x124], ebx
jl 0x1003d951
push dword [esp + 0x4c]
movdqa xmm0, xmmword [0x10007ec0]
lea eax, [esp + 0x1c0]
push eax
lea eax, [esp + 0x1b4]
mov dword [esp + 0x68], ebx
push eax
push ebx
lea ecx, [esp + 0x70]
mov dword [esp + 0x74], ebx
movdqu xmmword [esp + 0x1bc], xmm0
mov dword [esp + 0x78], ebx
call fcn.1002c30d
mov edi, dword [esp + 0x60]
mov dword [esp + 0x1c], 0xfffffffc
mov dword [edi + 0xc], ebx
mov ecx, dword [edi + 0xc]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x24], 5
cmp dword [eax + ecx*4], ebx
jne 0x1003d8c6
mov eax, dword [esp + 0x14]
xor ecx, ecx
mov eax, dword [esp + 0x24]
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0xc]
cmp dword [edi + 0xc], eax
setl cl
sub ecx, 0xfffffff7
neg ecx
sbb ecx, ecx
inc ecx
mov dword [esp + 0x1c], ecx
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x120]
mov eax, dword [esp + 0x24]
mov eax, dword [esp + 0x124]
mov ecx, dword [esp + 0x40]
mov edx, dword [edi + 0xc]
mov eax, dword [ecx + eax*4]
cmp eax, dword [ecx + edx*4]
jge 0x1003d8ee
mov dword [esp + 0x1c], 0xffffffff
mov dword [esp + 0x24], 0xa0f83931
jmp 0x1003d90f
mov dword [esp + 0x24], 0xb82
cmp dword [esp + 0x24], ebx
jne 0x1003d91c
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x1003d90f
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
inc dword [edi + 0xc]
cmp dword [edi + 0xc], 3
jle 0x1003d877
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x40]
push dword [esp + 0x60]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x28], eax
call fcn.1004e579
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebx
dec dword [esp + 0x128]
pop ecx
jns 0x1003d82d
push 0xfffffffffffffff8
pop edi
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 3
jle 0x1003d7e9
mov eax, dword [esp + 0xc]
xor edx, edx
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x14]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x14]
cmp eax, 0x9b76
mov edi, dword [esp + 0x40]
mov eax, dword [esp + 0x40]
setl dl
xor ecx, ecx
add edx, dword [edi + 4]
cmp edx, dword [eax]
setle cl
mov dword [esp + 0x24], ecx
xor ecx, ecx
mov eax, dword [esp + 0x24]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
inc eax
cmp eax, 0x8a5d
setg cl
cmp ecx, dword [esp + 0x20]
jne 0x1003d9d1
mov ecx, ebx
cmp dword [esp + 0x1c], ebx
je 0x1003d9d3
mov ecx, esi
mov edx, dword [esp + 0x40]
xor eax, eax
cmp ecx, 0xffffffff
setne al
xor ecx, ecx
cmp eax, dword [edx + 8]
setg cl
sub ecx, dword [edx + 0xc]
neg ecx
sbb ecx, ecx
inc ecx
imul ecx, dword [edi + 4]
test ecx, ecx
je 0x1003da03
cmp dword [esp + 0xc], ebx
mov eax, esi
mov edx, dword [esp + 0x40]
jne 0x1003da05
mov eax, ebx
mov dword [esp + 0x28], eax
push edx
mov byte [esp + 0x1f8], 4
call fcn.1004e579
pop ecx
push 0xfffffffffffffff8
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
dec dword [esp + 0x18]
pop edi
cmp dword [esp + 0x14], 0xffffffe6
je 0x1003d789
mov eax, dword [esp + 0x34]
xor edx, edx
mov ecx, dword [esp + 0x34]
imul ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
cmp ecx, eax
mov eax, dword [esp + 0x14]
setle dl
xor ecx, ecx
cmp eax, edx
setge cl
sub ecx, dword [esp + 0x14]
neg ecx
sbb ecx, ecx
inc ecx
neg ecx
jne 0x1003da6e
mov edx, ebx
cmp dword [esp + 0x34], ebx
je 0x1003da70
mov edx, esi
mov ecx, dword [esp + 0x98]
xor eax, eax
push 7
pop edi
push ecx
cmp edx, dword [ecx + 8]
setl al
add eax, edi
neg eax
sbb eax, eax
inc eax
mov dword [esp + 0x18], eax
or dword [esp + 0x1f8], 0xffffffff
call fcn.1004e579
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], ebx
mov dword [esp + 0xa4], ebx
mov dword [esp + 0x20], esi
mov dword [esp + 0x10], 0x7c1188e1
mov dword [esp + 0x28], 0xffffffff
mov dword [esp + 0x18], 0xfffffffa
mov dword [esp + 0x2c], 0xb0badcab
mov dword [esp + 0x24], ebx
mov dword [esp + 0x38], edi
pop ecx
mov dword [esp + 0x14], ebx
jmp 0x1003daf3
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0x6c], 0xa754320e
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 3
jl 0x1003dae3
mov dword [esp + 0x14], ebx
jmp 0x1003db10
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0x78], 0xa86e
inc dword [esp + 0x14]
cmp dword [esp + 0x14], esi
jl 0x1003db00
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x14], eax
cmp dword [esp + 0x14], ebx
je 0x1003db28
mov eax, dword [esp + 0x6c]
mov eax, dword [esp + 0xc]
xor edx, edx
cmp eax, esi
mov eax, dword [esp + 0xc]
setl dl
xor ecx, ecx
cmp edx, eax
setg cl
xor eax, eax
cmp ecx, 0x758f
setle al
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0xc]
cmp eax, dword [esp + 0xc]
jl 0x1003db5f
mov eax, dword [esp + 0x74]
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x24]
mov dword [esp + 0x20], eax
cmp dword [esp + 0x20], ebx
je 0x1003dcdd
mov dword [esp + 0x10], 3
mov dword [esp + 0x24], 0xfffffffd
mov dword [esp + 0x20], 0x1bfdb9ce
mov dword [esp + 0x20], 0xfc8bab22
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], 0xe8ce1f6d
mov dword [esp + 0x14], 0xffffffe9
jmp 0x1003dc54
mov dword [esp + 0x20], 0x9c906054
mov dword [esp + 0x28], 0xb91bf520
mov dword [esp + 0xc], ebx
jmp 0x1003dbd4
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0x38], ebx
inc dword [esp + 0xc]
cmp dword [esp + 0xc], esi
jl 0x1003dbc8
mov eax, dword [esp + 0x38]
xor ecx, ecx
mov eax, dword [esp + 0x38]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x38]
cmp eax, 0xfffffff8
mov eax, dword [esp + 0x38]
setle cl
xor edx, edx
add ecx, eax
mov eax, dword [esp + 0x10]
cmp ecx, eax
setge dl
cmp dword [esp + 0xc], edx
jl 0x1003dc15
mov eax, dword [esp + 0x38]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x6c], eax
cmp eax, dword [esp + 0x10]
jle 0x1003dc2b
mov ecx, ebx
cmp dword [esp + 0x1c], ebx
je 0x1003dc2d
mov ecx, esi
mov eax, dword [esp + 0x10]
add eax, ecx
sub eax, dword [esp + 0x38]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0x4292
mov eax, dword [esp + 0x10]
setge cl
add eax, ecx
mov dword [esp + 0x28], eax
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 0x1e
jl 0x1003dbb2
mov dword [esp + 0x20], esi
xor edx, edx
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x20]
sub ecx, eax
mov eax, dword [esp + 0x1c]
cmp ecx, eax
mov eax, dword [esp + 0x24]
sete dl
xor ecx, ecx
cmp edx, eax
setge cl
xor edx, edx
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x70]
mov eax, dword [esp + 0x1c]
add ecx, eax
mov eax, dword [esp + 0x24]
sub eax, 4
cmp eax, ecx
mov eax, dword [esp + 0x34]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [esp + 0x70]
setl cl
imul ecx, eax
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x78]
imul ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x10]
sub eax, ecx
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x28], ebx
jmp 0x1003de20
push 4
lea ecx, [esp + 0x90]
call fcn.10026bf9
mov dword [esp + 0x28], 0x6ee5324e
mov eax, 0x96d0
mov dword [esp + 0x2c], esi
mov dword [esp + 0x2c], 0xb4c718fe
mov dword [esp + 0x28], 0x342ba517
mov dword [esp + 0x12c], eax
mov dword [esp + 0x130], eax
mov dword [esp + 0x134], eax
mov dword [esp + 0x138], eax
mov dword [esp + 0x10], ebx
jmp 0x1003dd40
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x8c]
mov dword [eax + ecx*4], ebx
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 4
jl 0x1003dd2e
mov dword [esp + 0xc], ebx
cmp dword [esp + 0xc], 0xfffffffe
jne 0x1003ddf4
mov edi, dword [esp + 0x8c]
mov dword [esp + 0x28], 0xfffffffa
mov edx, esi
mov dword [esp + 0x28], 0x8cc2a30e
mov dword [esp + 0x20], 0x7eeacc20
mov dword [esp + 0x28], 0xffffffff
mov dword [esp + 0x28], 0xffffffff
mov dword [esp + 0x28], 0xfffffffb
mov ecx, dword [esp + 0x2c]
sub ecx, 0xd6319dc0
neg ecx
sbb ecx, ecx
inc ecx
add ecx, dword [esp + 0x138]
mov eax, dword [edi + 4]
dec dword [esp + 0x138]
cmp eax, ecx
mov eax, dword [esp + 0x20]
cmovge edx, ebx
imul eax, dword [esp + 0x20], 0xa5b3
sub eax, dword [esp + 0x1c]
neg eax
sbb eax, eax
inc eax
cmp eax, 0xb6c7f149
ja 0x1003ddd8
mov ecx, esi
cmp dword [esp + 0x78], ebx
jne 0x1003ddda
mov ecx, ebx
xor eax, eax
cmp edx, ecx
sete al
mov dword [esp + 0x28], eax
dec dword [esp + 0xc]
cmp dword [esp + 0xc], 0xfffffffe
je 0x1003dd5d
cmp dword [esp + 0x8c], 0
je 0x1003de20
push dword [esp + 0x8c]
call fcn.1004e579
pop ecx
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], ebx
mov eax, 0xf825e7a6
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x10], 0x8110
mov dword [esp + 0x28], 0x8eca
mov dword [esp + 0x20], esi
cmp dword [esp + 0x50], ebx
je 0x1003e04d
mov dword [esp + 0x14], 0x57ea0d01
lea ecx, [esp + 0xd0]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x1c], 0x73e70d2
mov dword [esp + 0x34], 0x165d3e8e
push 3
call fcn.10026bf9
mov dword [esp + 0x24], 0xa55b90cb
mov dword [esp + 0x20], 0xbdfac86e
mov dword [esp + 0xc], ebx
jmp 0x1003dea2
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0x154], esi
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 2
jl 0x1003de93
mov dword [esp + 0xc], ebx
jmp 0x1003dec5
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0xd0]
mov dword [eax + ecx*4], 0x37280dd
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 3
jl 0x1003deaf
mov ecx, dword [esp + 0x14]
xor edx, edx
mov eax, dword [esp + 0x14]
cmp ecx, eax
mov eax, dword [esp + 0x14]
setl dl
xor ecx, ecx
cmp edx, eax
setl cl
imul ecx, dword [esp + 0x14]
cmp ecx, 0x9c44d4e2
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, 0xffffffff
mov eax, dword [esp + 0x5c]
setne cl
xor edx, edx
cmp eax, ecx
mov eax, dword [esp + 0x10]
setl dl
xor ecx, ecx
cmp edx, eax
setge cl
xor edx, edx
imul ecx, dword [esp + 0x50]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
cmp eax, ecx
setl dl
xor eax, eax
cmp edx, 0xf2e0
setl al
xor edx, edx
mov dword [esp + 0x158], eax
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x54]
cmp ecx, eax
mov eax, dword [esp + 0x14]
setle dl
neg edx
mov dword [esp + 0x2c], edx
xor edx, edx
cmp dword [esp + 0x2c], eax
mov eax, dword [esp + 0x50]
setne dl
xor ecx, ecx
cmp edx, eax
setge cl
cmp ecx, dword [esp + 0x14]
je 0x1003df84
mov ecx, esi
cmp dword [esp + 0x50], ebx
jne 0x1003df86
mov ecx, ebx
mov eax, dword [esp + 0x10]
xor edx, edx
cmp ecx, eax
mov eax, dword [esp + 0x58]
setge dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [esp + 0x34], ecx
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0xd0]
mov dword [ecx + 4], eax
test eax, eax
je 0x1003e02b
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x24]
sub ecx, 0x525a5285
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [esp + 0x34]
setne dl
xor ecx, ecx
cmp eax, edx
setl cl
mov dword [esp + 0x24], ecx
xor ecx, ecx
mov eax, dword [esp + 0x24]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x50]
mov eax, dword [esp + 0xc]
test eax, eax
setns cl
sub ecx, dword [esp + 0x28]
sub ecx, 0xcde
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, 0x4560
setne al
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x5c]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0xd0]
push ecx
mov dword [esp + 0x24], esi
call fcn.1004e579
pop ecx
mov dword [esp + 0xd0], ebx
mov dword [esp + 0xd4], ebx
mov dword [esp + 0xd8], ebx
jmp 0x1003e066
mov dword [esp + 0x2c], ebx
mov eax, dword [esp + 0x50]
mov eax, dword [esp + 0x2c]
mov eax, dword [esp + 0x50]
sub eax, 0x753c6043
mov dword [esp + 0x20], eax
cmp dword [esp + 0xf0], 0
je 0x1003e1ff
mov dword [esp + 0x30], 0xfffffffd
mov dword [esp + 0x1c], ebx
jmp 0x1003e095
mov eax, dword [esp + 0x1c]
mov dword [esp + eax*4 + 0x1cc], 0xb55b
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], 3
jl 0x1003e082
mov dword [esp + 0x30], 2
cmp dword [esp + 0x30], ebx
jl 0x1003e0c3
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x1003e0bd
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_SetCommTimeouts]
dec dword [esp + 0x30]
jns 0x1003e0aa
mov ecx, dword [esp + 0xf0]
call fcn.1003cf8b
mov dword [esp + 0x14], 0x68206240
mov edi, eax
mov dword [esp + 0x2c], 9
mov dword [esp + 0x20], 0xfc6088b9
mov dword [esp + 0x30], eax
mov dword [esp + 0x14], 0xffffffe7
jmp 0x1003e1d1
mov dword [esp + 0xc], ebx
mov dword [esp + 0x1c], ebx
jmp 0x1003e117
mov eax, dword [esp + 0x1c]
mov dword [esp + eax*4 + 0xb0], 0xff55e00f
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], 2
jl 0x1003e104
mov dword [esp + 0xc], esi
cmp dword [esp + 0xc], ebx
jl 0x1003e1cd
mov dword [esp + 0x20], esi
xor edx, edx
mov dword [esp + 0x28], esi
mov eax, dword [esp + 0x14]
cmp eax, 0xffffffff
mov eax, dword [esp + 0x14]
setg dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [esp + 0xc]
setl cl
cmp ecx, 8
mov eax, dword [esp + eax*4 + 0xb0]
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
setle cl
xor edx, edx
mov dword [esp + 0x20], ecx
mov eax, dword [esp + 0x20]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + eax*4 + 0xb0]
mov eax, dword [esp + 0x2c]
cmp ecx, eax
mov eax, dword [esp + 0xc]
setg dl
xor ecx, ecx
mov eax, dword [esp + eax*4 + 0xb0]
add eax, dword [esp + 0x20]
cmp edx, eax
mov eax, dword [esp + 0xc]
setne cl
xor edx, edx
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + eax*4 + 0xb0]
mov eax, dword [esp + 0x14]
cmp ecx, eax
sete dl
sub edx, dword [esp + 0x28]
neg edx
sbb edx, edx
inc edx
mov dword [esp + 0x28], edx
dec dword [esp + 0xc]
jns 0x1003e12c
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 0xd
je 0x1003e0fa
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x1003e1f3
push ebx
push 0x10a4
call dword [sym.imp.KERNEL32.dll_IsDBCSLeadByteEx]
lea eax, [esp + 0x3c]
push eax
call fcn.1003e7d6
mov dword [eax], edi
push esi
lea ecx, [esp + 0x84]
call fcn.10026bf9
mov dword [esp + 0x10], 0x7ce53d8d
mov dword [esp + 0x2c], 0x262c
cmp dword [esp + 0x2c], 0xa54
jge 0x1003e2ea
push 0x11cc7178
push 0x10007860
call fcn.1004df4b
pop ecx
pop ecx
mov ecx, dword [0x11cc7178]
mov edi, ebx
test ecx, ecx
jle 0x1003e274
lea eax, [esp + 0x108]
push eax
push 0x10007860
call fcn.1004df4b
mov eax, dword [esp + 0x110]
pop ecx
pop ecx
mov ecx, dword [0x11cc7178]
inc dword [eax*4 + 0x11cc73b0]
inc edi
cmp edi, ecx
jl 0x1003e247
mov edi, 0x11cc73b0
mov eax, ecx
and eax, 0x80000001
jns 0x1003e287
dec eax
or eax, 0xfffffffe
inc eax
jne 0x1003e2a5
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
cmp dword [edi], eax
jle 0x1003e2a5
push 0x10007880
call fcn.1004e792
pop ecx
mov ecx, dword [0x11cc7178]
mov eax, ecx
and eax, 0x80000001
jns 0x1003e2b3
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, esi
jne 0x1003e2d4
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
inc eax
cmp dword [edi], eax
jle 0x1003e2d4
push 0x10007880
call fcn.1004e792
pop ecx
mov ecx, dword [0x11cc7178]
add edi, 4
cmp edi, 0x11cc8354
jl 0x1003e279
push 0x1000787c
call fcn.1004e792
pop ecx
mov dword [esp + 0x1c], ebx
jmp 0x1003e306
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x80]
mov dword [eax + ecx*4], 0x5d6c05ba
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], esi
jl 0x1003e2f0
mov dword [esp + 0x10], ebx
jmp 0x1003e328
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x80]
mov dword [eax + ecx*4], 0xe97eede0
inc dword [esp + 0x10]
cmp dword [esp + 0x10], esi
jl 0x1003e312
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x1003e342
push ebx
push 0x24
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconW]
cmp dword [esp + 0x80], 0
je 0x1003e36e
push dword [esp + 0x80]
call fcn.1004e579
pop ecx
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ebx
lea ecx, [esp + 0xec]
call fcn.100391c8
mov dword [esp + 0x14], 0xad386cce
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 0x10], 0xcee61780
mov dword [esp + 0x1c], ebx
jmp 0x1003e3ab
mov eax, dword [esp + 0x1c]
mov dword [esp + eax*4 + 0xdc], 0xffffffff
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], 4
jl 0x1003e398
mov eax, dword [esp + 0xe0]
xor ecx, ecx
mov eax, dword [esp + 0xe0]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0xe0]
mov eax, dword [esp + 0xe0]
mov eax, dword [esp + 0xe0]
mov eax, dword [esp + 0xc]
cmp eax, 0x5cb5542a
push 0xfffffffffffffff8
setne cl
pop eax
cmp eax, ecx
sbb eax, eax
neg eax
imul eax, dword [esp + 0x14]
cmp dword [esp + 0x14], eax
jl 0x1003e40e
cmp dword [esp + 0xe4], ebx
jne 0x1003e40e
mov esi, ebx
mov dword [esp + 0x10], esi
mov dword [esp + 0x10], ebx
jmp 0x1003e486
mov dword [esp + 0xc], ebx
jmp 0x1003e47b
mov dword [esp + 0x14], ebx
jmp 0x1003e45a
mov dword [esp + 0x2c], 0x869b
mov dword [esp + 0x2c], 0xffffffff
mov dword [esp + 0x20], 0x42628217
dec dword [esp + 0x20]
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x1003e456
push 0xb8f
call dword [sym.imp.USER32.dll_HideCaret]
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 3
jle 0x1003e424
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + eax*4 + 0xdc]
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0xdc], ecx
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 3
jle 0x1003e41e
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 7
je 0x1003e418
mov ecx, dword [esp + 0x30]
test ecx, ecx
je 0x1003e4b6
mov edx, dword [esp + 0x10c]
call fcn.1003cfc1
mov esi, eax
lea eax, [esp + 0x7c]
push eax
mov dword [esp + 0x100], esi
call fcn.1003e774
mov dword [eax], esi
mov eax, dword [ebp + 8]
lea esi, [esp + 0xfc]
mov ecx, dword [esp + 0x1ec]
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