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

Disassembly:
sub esp, 0x88
cmp dword [esp + 0x98], 0xa
push ebx
push ebp
push esi
push edi
jb 0x1019cb0b
mov eax, dword [esp + 0xa0]
mov edi, dword [esp + 0xac]
mov ebx, dword [esp + 0x9c]
add eax, ebx
mov esi, dword [esp + 0xa4]
mov dword [esp + 0x34], eax
lea eax, [edi + 4]
push esi
mov dword [esp + 0x1c], eax
call fcn.10125ba4
movzx ebp, ax
lea eax, [esi + 2]
push eax
mov dword [esp + 0x9c], ebp
call fcn.10125ba4
movzx eax, ax
mov dword [esp + 0x1c], eax
lea eax, [esi + 4]
push eax
call fcn.10125ba4
mov ecx, dword [esp + 0xb4]
add esi, 6
movzx eax, ax
sub ecx, eax
mov dword [esp + 0x44], eax
sub ecx, dword [esp + 0x20]
mov eax, dword [esp + 0xac]
sub ecx, ebp
sub ecx, 6
add eax, 3
shr eax, 2
mov dword [esp + 0x9c], ecx
lea ecx, [esi + ebp]
mov dword [esp + 0x38], ecx
push edi
lea ecx, [eax + ebx]
lea edx, [ecx + eax]
mov dword [esp + 0x4c], ecx
add eax, edx
mov dword [esp + 0x30], edx
mov ebx, eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x38], ecx
mov ebp, edx
mov dword [esp + 0x34], edx
mov dword [esp + 0x2c], ebx
call fcn.101298e8
mov edi, dword [esp + 0xa0]
add esp, 0x10
shr eax, 0x10
movzx eax, al
mov dword [esp + 0x10], eax
cmp edi, dword [esp + 0xa8]
ja 0x1019cb0b
push dword [esp + 0x94]
lea eax, [esp + 0x80]
push esi
push eax
call fcn.101a4500
add esp, 0xc
cmp eax, 0xffffff88
ja 0x1019cb0e
push dword [esp + 0x14]
lea eax, [esp + 0x6c]
push dword [esp + 0x30]
push eax
call fcn.101a4500
add esp, 0xc
cmp eax, 0xffffff88
ja 0x1019cb0e
mov eax, dword [esp + 0x2c]
add eax, dword [esp + 0x14]
mov esi, dword [esp + 0x38]
push esi
push eax
lea eax, [esp + 0x5c]
push eax
call fcn.101a4500
add esp, 0xc
cmp eax, 0xffffff88
ja 0x1019cb0e
mov eax, dword [esp + 0x2c]
add eax, dword [esp + 0x14]
add eax, esi
push edi
push eax
lea eax, [esp + 0x48]
push eax
call fcn.101a4500
add esp, 0xc
cmp eax, 0xffffff88
ja 0x1019cb0e
lea eax, [esp + 0x40]
push eax
call fcn.1011f5d4
mov edi, eax
lea eax, [esp + 0x58]
push eax
call fcn.1011f5d4
or edi, eax
lea eax, [esp + 0x70]
push eax
call fcn.1011f5d4
mov esi, eax
lea eax, [esp + 0x88]
or esi, edi
mov edi, dword [esp + 0x40]
push eax
add edi, 0xfffffffd
call fcn.1011f5d4
or eax, esi
add esp, 0x10
neg eax
mov edx, ebx
sbb eax, eax
inc eax
cmp edx, edi
sbb ecx, ecx
neg ecx
test ecx, eax
je 0x1019c68d
push dword [esp + 0x10]
mov esi, dword [esp + 0x1c]
lea eax, [esp + 0x80]
mov edi, dword [esp + 0xa0]
push esi
push eax
push edi
call fcn.1012d224
push dword [esp + 0x20]
add edi, eax
lea eax, [esp + 0x7c]
push esi
mov esi, dword [esp + 0x40]
push eax
push esi
call fcn.1012d224
push dword [esp + 0x30]
add esi, eax
lea eax, [esp + 0x78]
push dword [esp + 0x3c]
push eax
push ebp
call fcn.1012d224
push dword [esp + 0x40]
add ebp, eax
lea eax, [esp + 0x74]
push dword [esp + 0x4c]
push eax
push ebx
call fcn.1012d224
add esp, 0x40
add ebx, eax
lea eax, [esp + 0x7c]
push dword [esp + 0x10]
push dword [esp + 0x1c]
push eax
push edi
call fcn.1012d224
push dword [esp + 0x20]
add edi, eax
lea eax, [esp + 0x7c]
mov dword [esp + 0xb0], edi
mov edi, dword [esp + 0x2c]
push edi
push eax
push esi
call fcn.1012d224
add esi, eax
lea eax, [esp + 0x74]
mov dword [esp + 0x48], esi
mov esi, dword [esp + 0x30]
push esi
push edi
push eax
push ebp
call fcn.1012d224
push esi
add ebp, eax
lea eax, [esp + 0x74]
push edi
push eax
push ebx
call fcn.1012d224
add esp, 0x40
add ebx, eax
lea eax, [esp + 0x40]
push eax
call fcn.1011f5d4
mov edi, eax
lea eax, [esp + 0x58]
push eax
call fcn.1011f5d4
or edi, eax
lea eax, [esp + 0x70]
push eax
call fcn.1011f5d4
mov esi, eax
lea eax, [esp + 0x88]
push eax
or esi, edi
call fcn.1011f5d4
mov ecx, dword [esp + 0x44]
or eax, esi
add esp, 0x10
neg eax
sbb eax, eax
add ecx, 0xfffffffd
inc eax
cmp ebx, ecx
sbb ecx, ecx
neg ecx
test ecx, eax
jne 0x1019c571
mov edx, dword [esp + 0x30]
mov dword [esp + 0x24], ebp
mov dword [esp + 0x1c], ebx
mov edi, dword [esp + 0x9c]
mov eax, dword [esp + 0x3c]
cmp edi, eax
ja 0x1019cb0b
mov esi, dword [esp + 0x28]
cmp esi, dword [esp + 0x20]
ja 0x1019cb0b
cmp ebp, edx
ja 0x1019cb0b
add eax, 0xfffffffd
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x7c]
push eax
call fcn.1011f5d4
neg eax
pop ecx
sbb eax, eax
inc eax
cmp edi, dword [esp + 0x2c]
sbb ecx, ecx
neg ecx
test ecx, eax
je 0x1019c734
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x2c]
push ebx
push esi
lea eax, [esp + 0x84]
push eax
push edi
call fcn.1012d224
push ebx
add edi, eax
lea eax, [esp + 0x90]
push esi
push eax
push edi
call fcn.1012d224
add edi, eax
lea eax, [esp + 0x9c]
push eax
call fcn.1011f5d4
add esp, 0x24
neg eax
sbb eax, eax
inc eax
cmp edi, ebp
sbb ecx, ecx
neg ecx
test ecx, eax
jne 0x1019c6e5
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x24]
mov esi, dword [esp + 0x28]
mov eax, dword [esp + 0x3c]
add eax, 0xfffffffe
mov dword [esp + 0x14], eax
lea eax, [esp + 0x7c]
push eax
call fcn.1011f5d4
neg eax
pop ecx
sbb eax, eax
inc eax
cmp dword [esp + 0x14], edi
sbb ecx, ecx
inc ecx
test ecx, eax
je 0x1019c7a2
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
push ebx
push esi
lea eax, [esp + 0x84]
push eax
push edi
call fcn.1012d224
add edi, eax
lea eax, [esp + 0x8c]
push eax
call fcn.1011f5d4
add esp, 0x14
neg eax
sbb eax, eax
inc eax
cmp ebp, edi
sbb ecx, ecx
inc ecx
test ecx, eax
jne 0x1019c766
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x24]
mov esi, dword [esp + 0x28]
cmp edi, dword [esp + 0x14]
ja 0x1019c7d9
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
push ebx
push esi
lea eax, [esp + 0x84]
push eax
push edi
call fcn.1012d224
add edi, eax
add esp, 0x10
cmp edi, ebp
jbe 0x1019c7b4
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x24]
mov esi, dword [esp + 0x28]
cmp edi, dword [esp + 0x3c]
jae 0x1019c7f8
push dword [esp + 0x10]
lea eax, [esp + 0x80]
push dword [esp + 0x1c]
push eax
push edi
call fcn.10118d54
add esp, 0x10
mov edi, dword [esp + 0x20]
lea eax, [esp + 0x68]
add edi, 0xfffffffd
push eax
mov dword [esp + 0x3c], edi
call fcn.1011f5d4
neg eax
pop ecx
sbb eax, eax
inc eax
cmp esi, edi
mov edi, dword [esp + 0x18]
sbb ecx, ecx
neg ecx
test ecx, eax
je 0x1019c86e
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x38]
push ebx
push edi
lea eax, [esp + 0x70]
push eax
push esi
call fcn.1012d224
push ebx
add esi, eax
lea eax, [esp + 0x7c]
push edi
push eax
push esi
call fcn.1012d224
add esi, eax
lea eax, [esp + 0x88]
push eax
call fcn.1011f5d4
add esp, 0x24
neg eax
sbb eax, eax
inc eax
cmp esi, ebp
sbb ecx, ecx
neg ecx
test ecx, eax
jne 0x1019c829
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
add eax, 0xfffffffe
mov dword [esp + 0x14], eax
lea eax, [esp + 0x68]
push eax
call fcn.1011f5d4
neg eax
pop ecx
sbb eax, eax
inc eax
cmp dword [esp + 0x14], esi
sbb ecx, ecx
inc ecx
test ecx, eax
je 0x1019c8ce
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
push ebx
push edi
lea eax, [esp + 0x70]
push eax
push esi
call fcn.1012d224
add esi, eax
lea eax, [esp + 0x78]
push eax
call fcn.1011f5d4
add esp, 0x14
neg eax
sbb eax, eax
inc eax
cmp ebp, esi
sbb ecx, ecx
inc ecx
test ecx, eax
jne 0x1019c89c
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x24]
cmp esi, dword [esp + 0x14]
ja 0x1019c8fa
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
push ebx
push edi
lea eax, [esp + 0x70]
push eax
push esi
call fcn.1012d224
add esi, eax
add esp, 0x10
cmp esi, ebp
jbe 0x1019c8dc
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x24]
cmp esi, dword [esp + 0x20]
jae 0x1019c913
push dword [esp + 0x10]
lea eax, [esp + 0x6c]
push edi
push eax
push esi
call fcn.10118d54
add esp, 0x10
mov esi, dword [esp + 0x30]
lea eax, [esp + 0x54]
add esi, 0xfffffffd
push eax
mov dword [esp + 0x3c], esi
call fcn.1011f5d4
neg eax
pop ecx
sbb eax, eax
inc eax
cmp ebp, esi
mov esi, dword [esp + 0x10]
sbb ecx, ecx
neg ecx
test ecx, eax
je 0x1019c97e
mov ebx, dword [esp + 0x38]
push esi
push edi
lea eax, [esp + 0x5c]
push eax
push ebp
call fcn.1012d224
push esi
add ebp, eax
lea eax, [esp + 0x68]
push edi
push eax
push ebp
call fcn.1012d224
add ebp, eax
lea eax, [esp + 0x74]
push eax
call fcn.1011f5d4
add esp, 0x24
neg eax
sbb eax, eax
inc eax
cmp ebp, ebx
sbb ecx, ecx
neg ecx
test ecx, eax
jne 0x1019c940
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x30]
add eax, 0xfffffffe
mov dword [esp + 0x20], eax
lea eax, [esp + 0x54]
push eax
call fcn.1011f5d4
neg eax
pop ecx
sbb eax, eax
inc eax
cmp dword [esp + 0x20], ebp
sbb ecx, ecx
inc ecx
test ecx, eax
je 0x1019c9d6
mov ebx, dword [esp + 0x20]
push esi
push edi
lea eax, [esp + 0x5c]
push eax
push ebp
call fcn.1012d224
add ebp, eax
lea eax, [esp + 0x64]
push eax
call fcn.1011f5d4
add esp, 0x14
neg eax
sbb eax, eax
inc eax
cmp ebx, ebp
sbb ecx, ecx
inc ecx
test ecx, eax
jne 0x1019c9a8
mov ebx, dword [esp + 0x1c]
cmp ebp, dword [esp + 0x20]
ja 0x1019c9fa
mov ebx, dword [esp + 0x20]
push esi
push edi
lea eax, [esp + 0x5c]
push eax
push ebp
call fcn.1012d224
add ebp, eax
add esp, 0x10
cmp ebp, ebx
jbe 0x1019c9e0
mov ebx, dword [esp + 0x1c]
cmp ebp, dword [esp + 0x30]
jae 0x1019ca10
push esi
push edi
lea eax, [esp + 0x5c]
push eax
push ebp
call fcn.10118d54
add esp, 0x10
lea eax, [esp + 0x40]
push eax
call fcn.1011f5d4
mov ebp, dword [esp + 0x38]
neg eax
pop ecx
sbb eax, eax
add ebp, 0xfffffffd
jmp 0x1019ca53
push esi
push edi
push eax
push ebx
call fcn.1012d224
push esi
add ebx, eax
lea eax, [esp + 0x54]
push edi
push eax
push ebx
call fcn.1012d224
add ebx, eax
lea eax, [esp + 0x60]
push eax
call fcn.1011f5d4
add esp, 0x24
neg eax
sbb eax, eax
inc eax
cmp ebx, ebp
sbb ecx, ecx
neg ecx
test ecx, eax
lea eax, [esp + 0x40]
jne 0x1019ca28
mov ebp, dword [esp + 0x34]
push eax
add ebp, 0xfffffffe
call fcn.1011f5d4
pop ecx
jmp 0x1019ca8e
push esi
push edi
lea eax, [esp + 0x48]
push eax
push ebx
call fcn.1012d224
add ebx, eax
lea eax, [esp + 0x50]
push eax
call fcn.1011f5d4
add esp, 0x14
neg eax
sbb eax, eax
inc eax
cmp ebp, ebx
sbb ecx, ecx
inc ecx
test ecx, eax
jne 0x1019ca72
jmp 0x1019cab0
push esi
push edi
lea eax, [esp + 0x48]
push eax
push ebx
call fcn.1012d224
add esp, 0x10
add ebx, eax
cmp ebx, ebp
jbe 0x1019ca9e
cmp ebx, dword [esp + 0x34]
jae 0x1019caca
push esi
push edi
lea eax, [esp + 0x48]
push eax
push ebx
call fcn.10118d54
add esp, 0x10
lea eax, [esp + 0x40]
push eax
call fcn.1011e2b8
mov edx, eax
lea eax, [esp + 0x58]
push eax
call fcn.1011e2b8
and edx, eax
lea eax, [esp + 0x70]
push eax
call fcn.1011e2b8
and edx, eax
lea eax, [esp + 0x88]
push eax
call fcn.1011e2b8
add esp, 0x10
test eax, edx
je 0x1019cb0b
mov eax, dword [esp + 0xa0]
jmp 0x1019cb0e
push 0xffffffffffffffec
pop eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x88
ret