Function at 0x1001cdf8
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x1008aa6b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xd0
push ebx
push esi
push edi
xor ebx, ebx
mov dword [esp + 0x38], edx
push ebx
push 0x78c8
lea eax, [esp + 0x54]
mov dword [esp + 0x54], 0x251d69f4
push 0x5811
push eax
mov edi, ecx
mov dword [esp + 0x5c], ebx
call fcn.1001d5fb
add esp, 0x10
cmp dword [edi + 0x10], ebx
jne 0x1001ce54
xor al, al
jmp 0x1001d5a8
push 0x2100
lea eax, [esp + 0x3c]
push eax
push ebx
push 0x532f
call fcn.1001fcf4
add esp, 0x10
mov dword [esp + 0x20], 0x17ca0029
mov dword [esp + 0x44], ebx
lea ecx, [esp + 0x50]
mov dword [esp + 0x40], 0xfffffffd
push 3
call fcn.10018b61
lea eax, [esp + 0x50]
mov dword [esp + 0xe4], ebx
push eax
lea eax, [esp + 0xc4]
mov dword [esp + 0x2c], 0xffffffff
push eax
mov edx, 0x618d
mov dword [esp + 0x20], 6
push ebx
mov dword [esp + 0x24], 1
push 0x43a2
lea ecx, [edx + 0x4b]
call fcn.1001c496
push 0x69c9
push 0x3cf9
lea eax, [esp + 0x58]
push 1
push eax
lea edx, [esp + 0x40]
lea ecx, [esp + 0x64]
call fcn.1001c496
add esp, 0x20
push 2
pop esi
mov dword [esp + 0x20], esi
cmp dword [esp + 0x20], ebx
jl 0x1001d0b1
mov dword [esp + 0x74], 0xf0adc109
lea ecx, [esp + 0x9c]
mov dword [esp + 0x18], 0xd978029
mov dword [esp + 0x14], 0xe360abed
mov dword [esp + 0x10], 0xce5f1497
push 3
call fcn.10018b61
xor edx, edx
inc edx
mov byte [esp + 0xe4], dl
mov dword [esp + 0x10], edx
mov dword [esp + 0x10], ebx
jmp 0x1001cf54
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x9c]
mov dword [eax + ecx*4], 0x3fa8726a
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 3
jl 0x1001cf3e
mov dword [esp + 0x10], ebx
jmp 0x1001cf71
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0x5c], 0x9f7e48ff
inc dword [esp + 0x10]
cmp dword [esp + 0x10], edx
jl 0x1001cf61
lea eax, [esp + 0x20]
push eax
push ebx
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x38]
push eax
lea edx, [esp + 0x88]
lea ecx, [esp + 0x64]
call fcn.1001cd67
mov eax, dword [esp + 0x64]
add esp, 0x14
cmp dword [eax + 4], ebx
jne 0x1001cfb9
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x50]
cmp dword [eax + ecx*4], ebx
jne 0x1001cfb9
mov edx, ebx
jmp 0x1001cfbc
xor edx, edx
inc edx
mov eax, dword [esp + 0x18]
xor ecx, ecx
cmp eax, edx
setge cl
cmp ecx, 0xbab
jl 0x1001cfd3
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x50]
mov edx, dword [eax + ecx*4]
xor ecx, ecx
mov eax, dword [esp + 0x18]
add edx, 0x722d53d0
add eax, 0x1ec8e12b
cmp edx, eax
setge cl
cmp ecx, dword [esp + 0x20]
jl 0x1001d02a
mov dword [esp + 0x28], ebx
jmp 0x1001d022
push 0x585f
mov byte [esp + 0x37], bl
lea edx, [esp + 0x37]
push ebx
mov ecx, 0x66a2
call fcn.1001cd27
mov eax, dword [esp + 0x28]
inc dword [esp + 0x30]
pop ecx
pop ecx
cmp dword [esp + 0x28], esi
jle 0x1001d000
jmp 0x1001d094
mov dword [esp + 0x18], 0xffffffff
lea ecx, [esp + 0x90]
push esi
call fcn.10018b61
mov dword [esp + 0x14], ebx
jmp 0x1001d05b
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x90]
mov dword [eax + ecx*4], 0xdd7081dc
inc dword [esp + 0x14]
cmp dword [esp + 0x14], esi
jl 0x1001d045
xor eax, eax
inc eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x90]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x9c]
mov dword [eax + 4], ecx
lea ecx, [esp + 0x90]
call fcn.10018be3
lea ecx, [esp + 0x9c]
mov byte [esp + 0xe4], bl
call fcn.10018be3
dec dword [esp + 0x20]
jns 0x1001cefc
or dword [esp + 0xe4], 0xffffffff
lea ecx, [esp + 0x50]
call fcn.10018be3
cmp dword [edi + 0x14], 0x10
jb 0x1001d0cc
mov esi, dword [edi]
jmp 0x1001d0ce
mov esi, edi
cmp dword [edi + 0x14], 0x10
jb 0x1001d0d8
mov ecx, dword [edi]
jmp 0x1001d0da
mov ecx, edi
mov eax, dword [edi + 0x10]
add eax, ecx
cmp esi, eax
je 0x1001d5a6
mov dword [esp + 0x10], 1
lea ecx, [esp + 0xb4]
mov dword [esp + 0x3c], ebx
push 3
call fcn.10018b61
lea eax, [esp + 0xc8]
mov dword [esp + 0xe4], 2
push eax
push 1
mov edx, 0x38da
lea ecx, [esp + 0xbc]
call fcn.1001cd27
push 0x4e7a
push ebx
lea eax, [esp + 0x42]
mov byte [esp + 0x42], bl
push 0x2089
push eax
call fcn.1001f96b
add esp, 0x18
mov dword [esp + 0x10], 0xffffffe2
jmp 0x1001d2d4
mov dword [esp + 0x34], ebx
xor ebx, ebx
mov dword [esp + 0x24], 0x694d2b5f
mov dword [esp + 0x48], 0xfffffff9
mov ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
cmp ecx, eax
setle bl
sub ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x34]
neg ebx
sbb ebx, ebx
xor edx, edx
inc ebx
cmp ebx, eax
mov eax, dword [esp + 0x34]
setge dl
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
mov dword [esp + 0x24], ecx
mov eax, dword [esp + 0x24]
cmp eax, 0xfffffff8
mov eax, dword [esp + 0x10]
setne dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [esp + 0x10]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [esp + 0x34]
setne dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [esp + 0x34]
setl cl
xor edx, edx
add eax, ecx
cmp eax, 0x194
mov eax, dword [esp + 0x10]
setle dl
xor ecx, ecx
cmp edx, eax
setl cl
xor eax, eax
cmp ecx, 0xc8b1
setg al
xor ebx, ebx
mov dword [esp + 0x3c], eax
cmp dword [esp + 0x3c], ebx
je 0x1001d2b8
mov dword [esp + 0x2c], 1
mov dword [esp + 0x24], ebx
jmp 0x1001d2ab
push 0x3cc1
lea eax, [esp + 0x30]
mov dword [esp + 0x70], 0x38e21363
push eax
push 0x4b22
lea eax, [esp + 0x30]
push ebx
push eax
call fcn.10020845
add esp, 0x14
mov dword [esp + 0x2c], 2
cmp dword [esp + 0x2c], ebx
jl 0x1001d2a7
lea eax, [esp + 0x2c]
mov dword [esp + 0x68], 0xd8720725
push eax
push ebx
lea eax, [esp + 0x44]
mov dword [esp + 0x84], 0x93c394a7
push eax
lea eax, [esp + 0x78]
push eax
push 0x832
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x64]
push eax
push 0x22e9
lea eax, [esp + 0xd8]
push eax
lea eax, [esp + 0x90]
push eax
lea eax, [esp + 0xa8]
push eax
call fcn.1001f620
mov eax, dword [esp + 0x5c]
add esp, 0x30
dec dword [esp + 0x2c]
jns 0x1001d241
inc dword [esp + 0x24]
cmp dword [esp + 0x24], 2
jle 0x1001d20e
jmp 0x1001d2d0
push ebx
lea eax, [esp + 0x4c]
push eax
push 0x509f
push 0x5baf
call fcn.1001f5ac
add esp, 0x10
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 0xffffffea
jne 0x1001d150
or dword [esp + 0xe4], 0xffffffff
lea ecx, [esp + 0xb4]
call fcn.10018be3
mov al, byte [esi]
cmp al, 0x30
jl 0x1001d413
cmp al, 0x39
jg 0x1001d413
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], ebx
jmp 0x1001d326
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0xcc], 0x64a6847d
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 3
jl 0x1001d313
mov dword [esp + 0x18], ebx
jmp 0x1001d3be
mov dword [esp + 0x10], 0x39924432
mov dword [esp + 0x10], ebx
jmp 0x1001d3b3
mov dword [esp + 0x14], 0xad2086bd
mov byte [esp + 0x1f], bl
cmp byte [esp + 0x1f], 0
je 0x1001d36e
push 0x8c8
push 0x1d22
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov dword [esp + 0x14], 2
cmp dword [esp + 0x14], ebx
jl 0x1001d3af
push ebx
lea eax, [esp + 0x74]
mov dword [esp + 0x74], 0x315362d
push eax
push 0x4932
push 0x39fc
call fcn.1001fbbd
mov eax, dword [esp + 0x24]
add esp, 0x10
cmp dword [esp + eax*4 + 0xcc], ebx
jne 0x1001d3af
dec dword [esp + 0x14]
jns 0x1001d37c
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 2
jle 0x1001d344
inc dword [esp + 0x18]
cmp dword [esp + 0x18], 2
jle 0x1001d336
mov byte [esp + 0x1f], bl
cmp byte [esp + 0x1f], 0
je 0x1001d3fc
push 0x33f3
push 1
push 0x3445
push 0x428b
push 0x4e6f
mov edx, 0x554b
mov ecx, 0x19c4
call fcn.1001cd67
add esp, 0x14
mov edx, dword [esp + 0x38]
movsx eax, byte [esi]
imul ecx, dword [edx], 0xa
add ecx, 0xffffffd0
add eax, ecx
inc esi
mov dword [edx], eax
jmp 0x1001d0ce
push 0xfffffffffffffffe
pop edi
mov dword [esp + 0x10], 0x9ad59e57
mov dword [esp + 0x14], 0xffffffff
push 3
mov dword [esp + 0x1c], edi
mov dword [esp + 0x1c], ebx
pop esi
jmp 0x1001d446
mov eax, dword [esp + 0x18]
mov dword [esp + eax*4 + 0xa8], 1
inc dword [esp + 0x18]
cmp dword [esp + 0x18], esi
jl 0x1001d433
mov dword [esp + 0x10], ebx
jmp 0x1001d4c7
mov dword [esp + 0x18], 6
xor ecx, ecx
mov dword [esp + 0x14], 1
inc dword [esp + 0x18]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + eax*4 + 0xa8]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
mov edx, dword [esp + eax*4 + 0xa8]
mov eax, dword [esp + 0x18]
dec eax
cmp edx, eax
setge cl
cmp ecx, 0xffff
sbb ecx, ecx
xor eax, eax
add ecx, 0x44421409
cmp ecx, 4
setge al
mov dword [esp + 0x14], eax
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
sete cl
mov dword [esp + 0x14], ecx
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 2
jle 0x1001d452
mov dword [esp + 0x14], ebx
jmp 0x1001d4e7
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0xa8], 0x6d0811fc
inc dword [esp + 0x14]
cmp dword [esp + 0x14], esi
jl 0x1001d4d4
push 0x591d
push ebx
lea eax, [esp + 0x40]
push eax
push 0x1d82
call fcn.1001fc33
add esp, 0x10
lea ecx, [esp + 0x84]
push esi
call fcn.10018b61
lea eax, [esp + 0x84]
mov dword [esp + 0xe4], esi
push eax
lea eax, [esp + 0xc8]
mov dword [esp + 0x68], 0xfc520ea
push eax
mov dword [esp + 0x68], 1
push ebx
mov dword [esp + 0x84], 0xeadd5d
push 0x5e13
mov dword [esp + 0x90], edi
call fcn.100207d4
lea eax, [esp + 0x94]
push eax
push ebx
call fcn.1001f440
lea eax, [esp + 0x98]
push eax
push ebx
lea eax, [esp + 0x98]
push eax
lea eax, [esp + 0x84]
push eax
lea eax, [esp + 0x8c]
push eax
lea eax, [esp + 0xb0]
push eax
call fcn.1001d6b2
add esp, 0x30
lea ecx, [esp + 0x84]
call fcn.10018be3
jmp 0x1001ce4d
mov al, 1
mov ecx, dword [esp + 0xdc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret