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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10081b55
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xf8
push ebx
push esi
mov dword [esp + 0x4c], edx
xor ebx, ebx
mov dword [esp + 0x64], ebx
mov esi, ecx
push edi
mov dword [esp + 0x70], 0xffffffff
lea ecx, [esp + 0x88]
mov dword [esp + 0x1c], 0x647f1a96
mov dword [esp + 0x24], 0xe52509e7
push 3
call fcn.100177e6
push 0x799a
push 0x283
mov dword [esp + 0x114], ebx
lea eax, [esp + 0x90]
push eax
push 0x2ae7
mov dword [esp + 0x3c], 0xffffffff
lea eax, [esp + 0x44]
mov dword [esp + 0x3c], 0x6e30f4ae
push 0x66e2
mov dword [esp + 0x2c], 1
push ebx
mov dword [esp + 0x44], 0xffffffff
push eax
mov dword [esp + 0x48], 0xd47ebdcf
mov dword [esp + 0x2c], 0xa597
mov dword [esp + 0x58], 0xac691c6c
push 0x630f
call fcn.1001aa9f
add esp, 0x20
mov dword [esp + 0x34], ebx
push 3
pop edi
jmp 0x1001a294
mov eax, dword [esp + 0x34]
mov dword [esp + eax*4 + 0xd4], 0xdb06862e
inc dword [esp + 0x34]
cmp dword [esp + 0x34], edi
jl 0x1001a281
push 0x19b5
lea eax, [esp + 0x28]
push eax
push ebx
lea eax, [esp + 0x7c]
push eax
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x7c]
push eax
call fcn.10021d70
add esp, 0x18
mov dword [esp + 0x24], ebx
jmp 0x1001a4e1
push 2
lea ecx, [esp + 0xa4]
call fcn.100177e6
push edi
lea ecx, [esp + 0xb0]
mov byte [esp + 0x110], 1
call fcn.100177e6
push 0x48f5
push ebx
lea eax, [esp + 0xa8]
mov byte [esp + 0x114], 2
push eax
lea eax, [esp + 0x78]
push 0x534e
push eax
call fcn.1001c877
add esp, 0x14
lea eax, [esp + 0x6c]
push eax
lea eax, [esp + 0xb0]
push eax
push 0x4014
push 0x6054
push ebx
call fcn.1001c7cd
add esp, 0x14
lea eax, [esp + 0x1c]
lea edx, [esp + 0x24]
xor cl, cl
push eax
call fcn.1001977b
pop ecx
mov dword [esp + 0x1c], ebx
jmp 0x1001a4b3
mov dword [esp + 0x14], 0xfffffffe
lea ecx, [esp + 0xc8]
push 2
call fcn.100177e6
mov byte [esp + 0x10c], 3
lea ecx, [esp + 0x94]
mov dword [esp + 0x2c], 0xef54
push 3
call fcn.100177e6
push ebx
lea edx, [esp + 0xcc]
mov byte [esp + 0x110], 4
lea ecx, [esp + 0x3c]
call fcn.10019c07
pop ecx
push 3
mov dword [esp + 0x3c], ebx
pop edi
jmp 0x1001a3b7
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x94]
mov dword [eax + ecx*4], 0xfa7bb34e
inc dword [esp + 0x38]
cmp dword [esp + 0x38], edi
jl 0x1001a3a1
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x8c]
push eax
push ebx
push 0x5eb2
call fcn.10023f39
mov eax, dword [esp + 0x2c]
add esp, 0x10
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + edx*4]
inc dword [esp + 0x10]
cmp eax, ecx
jle 0x1001a42d
mov dword [esp + 0xd4], 1
xor edx, edx
inc edx
mov eax, dword [esp + 0x14]
xor ecx, ecx
cmp edx, eax
mov eax, dword [esp + 0x94]
setne cl
mov dword [eax + 4], ecx
test ecx, ecx
jne 0x1001a452
mov eax, dword [esp + 0xac]
cmp dword [eax + 8], ebx
jne 0x1001a452
mov eax, ebx
jmp 0x1001a455
mov dword [esp + 0xd4], ebx
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0xa0]
mov ecx, dword [eax + 4]
mov eax, dword [esp + 0x88]
cmp ecx, dword [eax + edx*4]
je 0x1001a401
mov edx, ebx
jmp 0x1001a404
xor eax, eax
inc eax
cmp eax, dword [esp + 0x18]
jl 0x1001a466
cmp dword [esp + 0x14], ebx
je 0x1001a466
xor ecx, ecx
inc ecx
jmp 0x1001a468
mov ecx, ebx
mov eax, dword [esp + 0x68]
xor edx, edx
cmp ecx, eax
mov eax, dword [esp + 0x3c]
setl dl
xor ecx, ecx
cmp edx, eax
sete cl
xor eax, eax
cmp ecx, 1
lea ecx, [esp + 0x94]
setg al
imul eax, dword [esp + 0x2c]
mov dword [esp + 0x18], eax
call fcn.10018003
lea ecx, [esp + 0xc8]
mov byte [esp + 0x10c], 2
call fcn.10018003
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], 2
jle 0x1001a34a
lea ecx, [esp + 0xac]
call fcn.10018003
lea ecx, [esp + 0xa0]
mov byte [esp + 0x10c], bl
call fcn.10018003
dec dword [esp + 0x24]
cmp dword [esp + 0x24], 0xfffffff7
jle 0x1001a2c5
or dword [esp + 0x10c], 0xffffffff
lea ecx, [esp + 0x88]
call fcn.10018003
cmp dword [esi + 0x10], ebx
jne 0x1001a50c
xor al, al
jmp 0x1001aa05
push 0x1e05
push 0x4974
push 0x2b52
push 0x2a60
push 0xd6
lea eax, [esp + 0x8c]
mov dword [esp + 0x98], 0xfffffffd
push eax
lea eax, [esp + 0x98]
mov dword [esp + 0x90], 7
push eax
lea eax, [esp + 0x4c]
mov dword [esp + 0x9c], 0xf7e44142
push eax
lea eax, [esp + 0x94]
mov dword [esp + 0x94], 0xfff7
push eax
lea eax, [esp + 0xa8]
mov dword [esp + 0x54], 0xffffffff
push eax
push ebx
push 0x5022
call fcn.100219e0
add esp, 0x30
mov dword [esp + 0x30], ebx
jmp 0x1001a5bd
mov dword [esp + 0x18], 0x4179
inc dword [esp + 0x18]
mov byte [esp + 0xf], bl
cmp byte [esp + 0xf], 0
je 0x1001a5b9
push 0x5072
push 0x11
pop edx
mov cl, 1
call fcn.1001977b
pop ecx
dec dword [esp + 0x30]
cmp dword [esp + 0x30], 0xfffffff8
je 0x1001a592
lea edx, [esp + 0x50]
xor cl, cl
call fcn.10019990
push dword [esp + 0x58]
movdqa xmm0, xmmword [0x10009a90]
lea eax, [esp + 0xf4]
push eax
lea eax, [esp + 0xe8]
mov dword [esp + 0x64], ebx
push eax
push ebx
lea ecx, [esp + 0x6c]
mov dword [esp + 0x70], ebx
movdqu xmmword [esp + 0xf0], xmm0
mov dword [esp + 0x74], ebx
call fcn.10018d2b
mov dword [esp + 0x10c], 5
lea eax, [esp + 0x100]
push dword [esp + 0x58]
movdqa xmm0, xmmword [0x10009b10]
lea ecx, [esp + 0x44]
push eax
lea eax, [esp + 0xf8]
mov dword [esp + 0x48], ebx
push eax
push ebx
movdqu xmmword [esp + 0x100], xmm0
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], ebx
call fcn.10018d2b
mov byte [esp + 0x10c], 6
mov eax, 0x19f8c517
mov dword [esp + 0x18], 2
mov dword [esp + 0x2c], 0xfffffffa
mov dword [esp + 0x18], 7
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov eax, dword [esp + 0x40]
mov dword [eax + 8], ebx
jmp 0x1001a7e7
lea eax, [esp + 0x40]
mov dword [esp + 0x10], 0xfffffff7
push eax
push 0x3ef2
lea eax, [esp + 0x64]
mov dword [esp + 0x20], 0xe60e7790
push ebx
mov dword [esp + 0x24], 0xe60be628
push eax
call fcn.1001c623
mov dword [esp + 0x20], edi
add esp, 0x10
cmp dword [esp + 0x10], ebx
jl 0x1001a7e0
mov eax, dword [esp + 0x40]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x14], 1
mov ecx, dword [eax + 8]
mov eax, dword [esp + 0x5c]
mov eax, dword [eax + ecx*4]
xor ecx, ecx
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
mov eax, dword [esp + 0x5c]
mov edx, dword [esp + 0x40]
mov eax, dword [eax + 4]
neg eax
cmp eax, dword [edx + 0xc]
setle cl
xor eax, eax
cmp ecx, 0xc6fe
setg al
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x14], eax
cmp dword [esp + 0x14], 0xae65c342
sbb eax, eax
inc eax
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
cmp eax, dword [edx + 0xc]
jg 0x1001a757
cmp dword [esp + 0x14], ebx
jne 0x1001a757
mov edi, ebx
jmp 0x1001a75a
xor edi, edi
inc edi
mov eax, dword [esp + 0x3c]
xor edx, edx
mov ecx, dword [esp + 0x5c]
mov eax, dword [eax + 8]
cmp edi, dword [ecx + eax*4]
mov eax, dword [esp + 0x3c]
setl dl
mov dword [esp + 0xbc], edx
mov eax, dword [eax + 8]
mov eax, dword [ecx + eax*4]
imul eax, edx
imul eax, eax, 0xaead
test eax, eax
je 0x1001a7a4
push ebx
lea eax, [esp + 0x2e]
mov byte [esp + 0x2e], bl
push eax
push 0x64c4
call fcn.1001c77b
add esp, 0xc
jmp 0x1001a7c1
mov byte [esp + 0xf], bl
cmp byte [esp + 0xf], 0
je 0x1001a7bb
mov edx, 0x62a6
mov cl, 1
call fcn.10019990
cmp dword [esp + 0x10], ebx
jne 0x1001a7d3
mov eax, dword [esp + 0x40]
mov ecx, dword [eax + 8]
mov eax, dword [esp + 0x5c]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x14], eax
dec dword [esp + 0x10]
jns 0x1001a6db
push 3
pop edi
mov eax, dword [esp + 0x40]
inc dword [eax + 8]
mov eax, dword [esp + 0x40]
cmp dword [eax + 8], edi
jle 0x1001a69d
lea ecx, [esp + 0x40]
call fcn.10018003
or dword [esp + 0x10c], 0xffffffff
lea ecx, [esp + 0x5c]
call fcn.10018003
cmp dword [esi + 0x14], 0x10
jb 0x1001a818
mov ecx, dword [esi]
jmp 0x1001a81a
mov ecx, esi
cmp dword [esi + 0x14], 0x10
mov dword [esp + 0x54], ecx
jb 0x1001a828
mov edx, dword [esi]
jmp 0x1001a82a
mov edx, esi
mov eax, dword [esi + 0x10]
add eax, edx
cmp ecx, eax
je 0x1001aa03
mov al, byte [ecx]
cmp al, 0x30
jl 0x1001a8a4
cmp al, 0x39
jg 0x1001a8a4
mov dword [esp + 0x10], 0x17571177
mov dword [esp + 0x10], ebx
jmp 0x1001a876
mov byte [esp + 0xf], bl
cmp byte [esp + 0xf], 0
je 0x1001a86c
push 1
mov edx, 0x1300
mov ecx, 0x513c
call fcn.10019c07
pop ecx
cmp dword [esp + 0x10], ebx
jne 0x1001a87d
dec dword [esp + 0x10]
cmp dword [esp + 0x10], 0xffffffea
jg 0x1001a84f
lea eax, [esp + 0x54]
push eax
push 0x165b
push 0x1419
lea eax, [esp + 0x5c]
push ebx
push eax
call fcn.1001cb2f
mov ecx, dword [esp + 0x68]
add esp, 0x14
inc ecx
jmp 0x1001a81a
push ebx
lea eax, [esp + 0x54]
push eax
push 0xea4
push 0x1a9e
push 0x7303
call fcn.1002196a
xor eax, eax
add esp, 0x14
inc eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x14], ebx
jmp 0x1001a9f3
mov dword [esp + 0x20], 0xeb71
mov dword [esp + 0x10], eax
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
mov eax, dword [esp + 0x20]
mov eax, dword [esp + 0x4c]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
neg edx
mov eax, dword [esp + 0x14]
sbb edx, edx
neg edx
add eax, edx
add ecx, eax
je 0x1001a91c
cmp dword [esp + 0x20], ebx
je 0x1001a91c
xor edx, edx
inc edx
jmp 0x1001a91e
mov edx, ebx
mov eax, dword [esp + 0x20]
xor ecx, ecx
cmp edx, eax
mov eax, dword [esp + 0x10]
sete cl
inc dword [esp + 0x10]
cmp eax, ecx
jl 0x1001a93a
xor ecx, ecx
inc ecx
jmp 0x1001a93c
mov ecx, ebx
mov eax, dword [esp + 0x20]
add eax, ecx
mov ecx, dword [esp + 0x14]
imul ecx, eax
cmp ecx, dword [esp + 0x4c]
jne 0x1001a983
cmp dword [esp + 0x10], ebx
jne 0x1001a983
push ebx
lea eax, [esp + 0x24]
push eax
push 0x45ab
push 0x209a
call fcn.1001b753
lea eax, [esp + 0x3b]
mov byte [esp + 0x3b], bl
push eax
push ebx
push 0x142a
call fcn.1001bf79
add esp, 0x1c
jmp 0x1001a9d9
lea eax, [esp + 0x7c]
mov dword [esp + 0x7c], 0x42b6
push eax
lea eax, [esp + 0x5c]
mov dword [esp + 0x5c], 0x68e10d32
push ebx
push eax
call fcn.1001bfda
add esp, 0xc
mov dword [esp + 0x10], ebx
jmp 0x1001a9d2
mov byte [esp + 0xf], bl
cmp byte [esp + 0xf], 0
je 0x1001a9ca
push 0x123a
push ebx
push 0x4f14
call fcn.1001b954
add esp, 0xc
mov eax, dword [esp + 0x14]
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 0x3b
jge 0x1001a9ac
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x24]
push ebx
push eax
call fcn.1001aa58
add esp, 0xc
dec dword [esp + 0x14]
push 1
pop eax
cmp dword [esp + 0x14], 0xfffffff3
jge 0x1001a8d1
jmp 0x1001a505
mov al, 1
mov ecx, dword [esp + 0x104]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret