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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10079b42
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x100
mov dword [esp + 0x40], edx
push ebx
push esi
push edi
push 0xfffffffffffffff9
pop eax
mov dword [esp + 0x10], eax
mov edi, ecx
mov dword [esp + 0x20], 0xfffffff8
xor ecx, ecx
inc ecx
xor ebx, ebx
mov dword [esp + 0x44], ecx
mov dword [esp + 0x20], 0xe704f3d4
mov dword [esp + 0x20], 0xfffffffe
mov dword [esp + 0x20], 6
mov dword [esp + 0x20], ecx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x28], 0x9dc86695
mov dword [esp + 0x20], 0xf9a4d91f
mov dword [esp + 0x20], 9
mov dword [esp + 0x24], eax
mov dword [esp + 0x24], 0x89be67e7
mov dword [esp + 0x24], 0x33c8a0c0
mov dword [esp + 0x24], 0xfffffffa
mov dword [esp + 0x24], 0x52783de7
mov dword [esp + 0x40], 0xffeac8e4
push 3
mov dword [esp + 0x28], ebx
mov dword [esp + 0x14], ebx
pop esi
jmp 0x10019484
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0xd0], 0xd7f825e7
inc dword [esp + 0x10]
cmp dword [esp + 0x10], esi
jl 0x10019471
mov dword [esp + 0x10], ebx
jmp 0x100194a3
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0xec], 0xfffffff7
inc dword [esp + 0x10]
cmp dword [esp + 0x10], esi
jl 0x10019490
mov dword [esp + 0x10], 2
cmp dword [esp + 0x10], ebx
jl 0x10019603
push 0xfffffffffffffffb
pop eax
mov dword [esp + 0x14], 0xb3b9da4d
mov dword [esp + 0x24], ecx
mov dword [esp + 0x1c], 0x57257ea0
mov dword [esp + 0x24], 0xfffffffc
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], eax
mov dword [esp + 0x24], 0xfffffff6
mov dword [esp + 0x14], ebx
jmp 0x10019517
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0xd0], 0x3ff82ff4
inc dword [esp + 0x14]
cmp dword [esp + 0x14], esi
jl 0x10019504
cmp dword [esp + 0xd8], ebx
je 0x1001958c
mov dword [esp + 0x24], 0x135e1f6f
push ecx
mov dword [esp + 0x28], 0xffffffff
lea ecx, [esp + 0xa8]
mov dword [esp + 0x28], 0x32456160
call fcn.100164e9
mov dword [esp + 0x24], ebx
mov dword [esp + 0x1c], 9
mov dword [esp + 0x14], ebx
jmp 0x10019573
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0xa4]
mov dword [eax + ecx*4], 0xc2184e5a
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 1
jl 0x1001955d
inc dword [esp + 0x1c]
lea ecx, [esp + 0xa4]
call fcn.1001656b
jmp 0x100195f3
mov dword [esp + 0x24], 0x9ce07b88
xor edx, edx
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x1c]
add eax, 0x951f1b00
add ecx, eax
mov eax, dword [esp + 0x28]
cmp ecx, eax
mov eax, dword [esp + 0x44]
setle dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [esp + 0xf4]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [esp + 0x20]
setg dl
xor ecx, ecx
sub edx, eax
mov eax, dword [esp + 0x14]
cmp eax, edx
setle cl
xor eax, eax
shl ecx, 2
cmp ecx, 0x6ca241e2
setge al
sub eax, 0x996d
mov dword [esp + 0x24], eax
dec dword [esp + 0x10]
push 1
pop ecx
push 0xfffffffffffffffb
pop eax
jns 0x100194be
cmp dword [edi + 0x10], ebx
jne 0x1001960f
xor al, al
jmp 0x10019dfd
mov dword [esp + 0x74], 0xffffffff
push ecx
mov dword [esp + 0x60], 6
lea ecx, [esp + 0x84]
mov dword [esp + 0x68], ebx
call fcn.100164e9
lea eax, [esp + 0xbc]
mov dword [esp + 0x114], ebx
push eax
mov dword [esp + 0x74], 0xbbfad0d7
lea edx, [esp + 0x84]
push 0x1682
xor cl, cl
call fcn.10019381
push ebx
lea eax, [esp + 0x3f]
mov byte [esp + 0x3f], bl
push eax
push 0x727e
call fcn.1001c45b
add esp, 0x14
lea eax, [esp + 0x70]
lea edx, [esp + 0x74]
lea ecx, [esp + 0x80]
push eax
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x6c]
push eax
push ebx
call fcn.10018b4d
or dword [esp + 0x124], 0xffffffff
lea ecx, [esp + 0x90]
add esp, 0x10
call fcn.1001656b
push ebx
lea eax, [esp + 0x50]
push 0x505
push eax
call fcn.1001a34d
add esp, 0xc
mov dword [esp + 0x14], 1
mov dword [esp + 0x1c], 0xdcc590f0
lea ecx, [esp + 0x98]
push 4
call fcn.100164e9
push 4
mov dword [esp + 0x24], 0x12a7b09f
mov dword [esp + 0x14], ebx
pop edx
jmp 0x10019700
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x98]
mov dword [eax + ecx*4], 9
inc dword [esp + 0x10]
cmp dword [esp + 0x10], edx
jl 0x100196ea
mov dword [esp + 0x10], ebx
jmp 0x1001971f
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0xf8], 1
inc dword [esp + 0x10]
cmp dword [esp + 0x10], edx
jl 0x1001970c
mov eax, dword [esp + 0x14]
xor edx, edx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x14]
mov dword [eax], ebx
mov dword [esp + 0xfc], ecx
mov eax, dword [esp + 0x14]
cmp eax, ecx
setge dl
sub edx, 0x78c0
neg edx
sbb edx, edx
neg edx
cmp edx, 0xffff
jb 0x1001976e
cmp dword [esp + 0x14], ebx
jne 0x1001976e
mov eax, ebx
jmp 0x10019771
xor eax, eax
inc eax
xor ecx, ecx
cmp eax, 0xffffffff
setl cl
xor eax, eax
cmp ecx, 0xd65f
lea ecx, [esp + 0x98]
setg al
mov dword [esp + 0x20], eax
call fcn.1001656b
cmp dword [edi + 0x14], 0x10
jb 0x1001979e
mov ecx, dword [edi]
jmp 0x100197a0
mov ecx, edi
cmp dword [edi + 0x14], 0x10
mov dword [esp + 0x38], ecx
jb 0x100197ae
mov edx, dword [edi]
jmp 0x100197b0
mov edx, edi
mov eax, dword [edi + 0x10]
add eax, edx
cmp ecx, eax
je 0x10019cfb
mov dword [esp + 0x10], 0xfffffffa
lea ecx, [esp + 0x8c]
mov dword [esp + 0x1c], 9
push 1
call fcn.100164e9
xor ecx, ecx
inc ecx
mov dword [esp + 0x114], ecx
mov dword [esp + 0x10], ebx
jmp 0x100197fa
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0xdc], ecx
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 4
jl 0x100197eb
mov dword [esp + 0x10], ebx
jmp 0x1001981d
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x8c]
or dword [eax + ecx*4], 0xffffffff
xor ecx, ecx
inc dword [esp + 0x10]
inc ecx
cmp dword [esp + 0x10], ecx
jl 0x10019807
mov dword [esp + 0x10], 0xffffffe8
cmp dword [esp + 0x10], 0xffffffef
jg 0x100199ea
jmp 0x1001983b
xor ecx, ecx
inc ecx
mov dword [esp + 0x28], 0xd3f5
mov dword [esp + 0x14], 0xffffffff
mov dword [esp + 0x2c], 0xafa01777
mov dword [esp + 0x48], 0xeec299e
mov dword [esp + 0x20], 0x4426
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x2c], eax
mov eax, ebx
cmp dword [esp + 0x2c], ebx
je 0x10019879
mov eax, ecx
mov dword [esp + 0x48], eax
xor edx, edx
mov eax, dword [esp + 0x48]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
cmp eax, ecx
mov eax, dword [esp + 0x28]
setg dl
xor ecx, ecx
neg edx
cmp edx, eax
setle cl
cmp ecx, dword [esp + 0x20]
jg 0x100198b2
cmp dword [esp + 0x14], ebx
jne 0x100198b2
xor eax, eax
inc eax
jmp 0x100198b4
mov eax, ebx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
cmp eax, dword [esp + 0x10]
jl 0x100198cd
cmp dword [esp + 0x1c], ebx
je 0x100198cd
xor eax, eax
inc eax
jmp 0x100198cf
mov eax, ebx
mov dword [esp + 0xe0], eax
mov dword [esp + 0x14], ebx
jmp 0x100199d0
mov dword [esp + 0x3c], 0xc7a8
mov dword [esp + 0x60], 0x762969fb
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x10019907
push 0xe77
push ebx
call fcn.1001a2c6
pop ecx
pop ecx
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0xe0]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp eax, ecx
mov eax, dword [esp + 0x2c]
setle dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [esp + 0x2c]
setne cl
xor edx, edx
add ecx, eax
mov eax, dword [esp + 0x28]
cmp ecx, eax
mov eax, dword [esp + 0x2c]
setge dl
sub edx, eax
cmp dword [esp + 0x14], edx
jl 0x100199af
lea eax, [esp + 0x3c]
mov dword [esp + 0x20], 0xe848967
push eax
push ebx
push 0x1070
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x58]
push eax
call fcn.1001c03e
add esp, 0x14
cmp dword [esp + 0x20], ebx
je 0x1001998d
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x100199cc
push ebx
push 0x661f
call fcn.1001c251
jmp 0x100199ab
push ebx
push 0x2a30
lea edx, [esp + 0x74]
mov dword [esp + 0x74], 0x32a49e86
lea ecx, [esp + 0x94]
call fcn.1001862f
pop ecx
pop ecx
jmp 0x100199cc
lea eax, [esp + 0x60]
push eax
push 0x7abe
push ebx
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.1001b8d3
add esp, 0x14
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 0x17
jg 0x100198df
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 0xffffffef
jle 0x10019838
or dword [esp + 0x114], 0xffffffff
lea ecx, [esp + 0x8c]
call fcn.1001656b
mov eax, dword [esp + 0x38]
mov al, byte [eax]
cmp al, 0x30
jl 0x10019a29
cmp al, 0x39
jg 0x10019a29
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x3c]
push ebx
push eax
call fcn.1001c1fd
mov ecx, dword [esp + 0x44]
add esp, 0xc
inc ecx
jmp 0x100197a0
push esi
lea ecx, [esp + 0x54]
call fcn.100164e9
push 2
pop edi
lea eax, [esp + 0x50]
mov dword [esp + 0x114], edi
push eax
lea eax, [esp + 0x38]
mov dword [esp + 0x14], 0x25d16df2
push ebx
mov dword [esp + 0x24], 0x3938
mov dword [esp + 0x28], 0xe547
push eax
call fcn.10020eb3
add esp, 0xc
mov dword [esp + 0x34], ebx
jmp 0x10019a7e
mov eax, dword [esp + 0x34]
mov dword [esp + eax*4 + 0x78], 0xa1a8f1ed
inc dword [esp + 0x34]
cmp dword [esp + 0x34], edi
jl 0x10019a6e
mov dword [esp + 0x10], edi
cmp dword [esp + 0x10], ebx
jl 0x10019b61
mov dword [esp + 0x14], 0xffffffff
mov dword [esp + 0x14], ebx
jmp 0x10019ab6
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x50]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
inc dword [esp + 0x14]
cmp dword [esp + 0x14], edi
jle 0x10019aa0
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x50]
mov dword [eax + ecx*4], edx
xor edx, edx
mov eax, dword [esp + 0x50]
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setge dl
sub edx, 0xa441
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setne cl
sub ecx, dword [esp + 0x14]
neg ecx
sbb ecx, ecx
inc ecx
imul ecx, dword [esp + 0x10]
cmp ecx, dword [esp + 0x10]
jge 0x10019b15
mov eax, dword [esp + 0x50]
cmp dword [eax], ebx
je 0x10019b15
xor edx, edx
inc edx
jmp 0x10019b17
mov edx, ebx
mov eax, dword [esp + 0x1c]
xor ecx, ecx
cmp edx, eax
setge cl
xor edx, edx
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
cmp ecx, eax
setge dl
sub edx, dword [esp + 0x10]
neg edx
sbb edx, edx
inc edx
add edx, 5
jne 0x10019b50
mov eax, dword [esp + 0x50]
cmp dword [eax + 4], ebx
jne 0x10019b50
mov eax, ebx
jmp 0x10019b53
xor eax, eax
inc eax
mov dword [esp + 0x7c], eax
dec dword [esp + 0x10]
jns 0x10019a92
mov eax, dword [esp + 0x50]
xor ecx, ecx
xor edi, edi
inc edi
mov dword [esp + 0x7c], edi
cmp dword [eax], 0x34283644
setge cl
cmp ecx, 7
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, 0xe83a
setg cl
xor eax, eax
cmp ecx, 0xffffffff
setg al
xor edx, edx
cmp eax, edi
mov eax, dword [esp + 0x1c]
setl dl
xor ecx, ecx
cmp eax, edx
setle cl
mov dword [esp + 0x10], ecx
lea ecx, [esp + 0x50]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x20], eax
or dword [esp + 0x114], 0xffffffff
call fcn.1001656b
lea eax, [esp + 0x4c]
mov edx, 0x7805
push edi
push eax
mov ecx, 0x5412
call fcn.1001862f
mov dword [esp + 0x28], 0x5043
xor eax, eax
push 0x17f1
mov dword [esp + 0x28], ebx
inc eax
mov dword [esp + 0x20], eax
mov edx, 0x750d
push 0x787a
mov dword [esp + 0x38], 0x315362da
mov ecx, 0x68ef
push 0x2539
mov dword [esp + 0x54], 0xe91c1785
mov dword [esp + 0x58], 0xffffffff
push eax
call fcn.10018b4d
mov eax, dword [esp + 0x38]
add esp, 0x18
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x14]
inc dword [esp + 0x28]
mov eax, dword [esp + 0x1c]
sub eax, 0x13b28858
neg eax
sbb eax, eax
inc eax
cmp eax, dword [esp + 0x14]
jl 0x10019c56
cmp dword [esp + 0x14], ebx
je 0x10019c56
xor ecx, ecx
inc ecx
mov eax, ecx
jmp 0x10019c5b
xor ecx, ecx
mov eax, ebx
inc ecx
cmp eax, dword [esp + 0x1c]
jge 0x10019c9a
lea eax, [esp + 0x68]
mov dword [esp + 0x68], ecx
push 0x6436
push eax
mov edx, 0x4f73
call fcn.10019381
push ebx
lea eax, [esp + 0x3e]
mov byte [esp + 0x3e], bl
push eax
push 0x7a03
push 0x78b8
call fcn.1001c0cf
add esp, 0x18
jmp 0x10019608
mov dword [esp + 0x10], 0xb39e2240
mov dword [esp + 0x1c], 2
mov dword [esp + 0x24], ecx
mov eax, dword [esp + 0x10]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x1c]
sub esi, eax
mov dword [esp + 0x40], esi
mov eax, dword [esp + 0x40]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x44]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
cmp dword [esp + 0x24], ebx
je 0x10019cee
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x24]
mov dword [esp + 0x14], eax
jmp 0x10019608
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
jmp 0x10019d14
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0xb0], ebx
inc dword [esp + 0x14]
cmp dword [esp + 0x14], esi
jl 0x10019d05
mov dword [esp + 0x10], ebx
jmp 0x10019d36
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x10019d32
push ebx
call fcn.10020dc1
pop ecx
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 2
jle 0x10019d20
mov ecx, dword [esp + 0x10]
xor edx, edx
mov eax, dword [esp + 0x10]
cmp ecx, eax
setl dl
imul edx, dword [esp + 0xb0]
test edx, edx
je 0x10019d73
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x10019dfb
push ebx
call dword [sym.imp.KERNEL32.dll_HeapDestroy]
jmp 0x10019dfb
mov dword [esp + 0x14], 0xdac0faab
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0xb8]
cmp dword [esp + 0x14], ebx
je 0x10019d90
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x14]
xor ecx, ecx
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
cmp eax, 0xadf8
setl cl
cmp ecx, dword [esp + 0x14]
jl 0x10019db7
cmp dword [esp + 0x10], ebx
je 0x10019db7
xor eax, eax
inc eax
jmp 0x10019db9
mov eax, ebx
cmp dword [esp + 0x10], eax
jne 0x10019dc3
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x14]
xor ecx, ecx
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
cmp eax, 0x6dab
mov eax, dword [esp + 0x14]
setle cl
sub ecx, eax
mov dword [esp + 0x10], ecx
mov byte [esp + 0x1b], bl
cmp byte [esp + 0x1b], 0
je 0x10019dfb
push ebx
push 0x54a3
call fcn.10019e50
pop ecx
pop ecx
mov al, 1
mov ecx, dword [esp + 0x10c]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret