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

Disassembly:
mov eax, 0x5c
call fcn.017e570c
mov ecx, dword [esp + 0x64]
push ebx
mov ebx, dword [esp + 0x64]
mov eax, dword [ebx]
push esi
push edi
xor edi, edi
xor esi, esi
cmp eax, dword [ecx]
mov dword [esp + 0x5c], edi
mov dword [esp + 0x58], edi
mov dword [esp + 0x44], edi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x24], esi
mov dword [esp + 0x54], edi
mov dword [esp + 0x40], edi
mov dword [esp + 0x30], edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x48], edi
mov dword [esp + 0xc], edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x34], edi
mov dword [esp + 0x60], edi
je 0x17649ef
push 0x176
push 0x100f6a5c
push 0x65
push 0xbb
push 0x10
call fcn.0175e7cc
add esp, 0x14
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x5c
ret
cmp dword [esp + 0x74], edi
push ebp
mov ebp, dword [esp + 0x7c]
jne 0x1764a10
cmp ebp, edi
jne 0x1764a10
push ecx
push ebx
call fcn.017574bc
add esp, 8
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x5c
ret
mov edx, dword [esp + 0x80]
xor ecx, ecx
cmp ebp, edi
jbe 0x1764a2f
mov ebx, dword [edx + ecx*4]
cmp eax, dword [ebx]
jne 0x1764a7e
add ecx, 1
cmp ecx, ebp
jb 0x1764a1d
mov ebx, dword [esp + 0x70]
cmp dword [esp + 0x88], edi
jne 0x1764a50
call fcn.01755f7c
cmp eax, edi
mov dword [esp + 0x60], eax
mov dword [esp + 0x88], eax
je 0x1765369
cmp dword [esp + 0x78], edi
je 0x1764b5a
push ebx
call fcn.01756dcc
mov esi, eax
add esp, 4
cmp esi, edi
mov dword [esp + 0x5c], esi
jne 0x1764aa3
push 0x194
push 0x100f6a5c
push 0x71
jmp 0x17652a4
push 0x183
push 0x100f6a5c
push 0x65
push 0xbb
push 0x10
call fcn.0175e7cc
add esp, 0x14
pop ebp
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x5c
ret
mov eax, dword [esp + 0x70]
mov ecx, dword [eax + 0x44]
push 0x100105e0
push 0x10010580
push 0x10010560
push ecx
call fcn.0175713c
mov ebx, eax
add esp, 0x10
cmp ebx, edi
mov dword [esp + 0x3c], ebx
je 0x1764b49
cmp dword [ebx + 8], edi
je 0x1764b49
mov edx, dword [esp + 0x88]
mov eax, dword [ebx + 0x10]
mov ecx, dword [eax]
push edx
mov edx, dword [esp + 0x74]
push ecx
push esi
push edx
call fcn.017579dc
add esp, 0x10
test eax, eax
jne 0x1764b49
mov eax, dword [esp + 0x78]
mov esi, dword [ebx + 4]
push eax
mov dword [esp + 0x44], esi
call fcn.0175526c
xor edx, edx
div esi
add esp, 4
mov esi, eax
mov eax, dword [ebx + 8]
add esi, 1
cmp esi, eax
mov dword [esp + 0x28], esi
jbe 0x1764b1f
mov esi, eax
mov dword [esp + 0x28], eax
mov ecx, dword [ebx + 0xc]
sub ecx, 1
mov edx, 1
shl edx, cl
imul eax, edx
cmp dword [ebx + 0x14], eax
mov dword [esp + 0x58], edx
je 0x1764b5a
push 0x1ad
push 0x100f6a5c
push 0x44
jmp 0x17652a4
mov esi, 1
mov dword [esp + 0x3c], edi
mov dword [esp + 0x28], esi
mov dword [esp + 0x38], esi
lea eax, [esi + ebp]
push 0x1bc
lea esi, [eax*4]
push 0x100f6a5c
push esi
mov dword [esp + 0x24], eax
call fcn.0175f55c
push 0x1bd
mov ebx, eax
push 0x100f6a5c
push esi
mov dword [esp + 0x4c], ebx
call fcn.0175f55c
push 0x1be
lea ecx, [esi + 4]
push 0x100f6a5c
push ecx
mov dword [esp + 0x40], eax
call fcn.0175f55c
push 0x1bf
push 0x100f6a5c
push esi
mov dword [esp + 0x50], eax
call fcn.0175f55c
add esp, 0x30
cmp ebx, edi
mov dword [esp + 0x10], eax
je 0x1765298
cmp dword [esp + 0x1c], edi
je 0x1765298
mov eax, dword [esp + 0x20]
cmp eax, edi
je 0x1765298
cmp dword [esp + 0x10], edi
je 0x1765298
mov edx, dword [esp + 0x38]
mov dword [eax], edi
lea eax, [edx + ebp]
cmp eax, edi
mov dword [esp + 0x30], edi
mov dword [esp + 0x14], edi
mov dword [esp + 0x2c], eax
jbe 0x1764cfe
mov ecx, dword [esp + 0x84]
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
sub ecx, ebx
sub edi, ebx
sub eax, ebx
mov esi, ebx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], edi
mov dword [esp + 0x68], eax
jmp 0x1764c34
mov edi, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
cmp dword [esp + 0x14], ebp
mov ebx, dword [esp + 0x78]
jae 0x1764c44
mov eax, dword [ecx + esi]
push eax
jmp 0x1764c45
push ebx
call fcn.0175526c
add esp, 4
cmp eax, 0x7d0
jb 0x1764c5b
mov eax, 6
jmp 0x1764c8b
cmp eax, 0x320
jb 0x1764c69
mov eax, 5
jmp 0x1764c8b
cmp eax, 0x12c
jb 0x1764c77
mov eax, 4
jmp 0x1764c8b
cmp eax, 0x46
jb 0x1764c83
mov eax, 3
jmp 0x1764c8b
cmp eax, 0x14
sbb eax, eax
add eax, 2
lea ecx, [eax - 1]
mov edx, 1
shl edx, cl
mov dword [esi], eax
mov dword [edi + esi + 4], 0
add dword [esp + 0x30], edx
cmp dword [esp + 0x14], ebp
jae 0x1764cb2
mov eax, dword [esp + 0x50]
mov eax, dword [eax + esi]
jmp 0x1764cb4
mov eax, ebx
mov ecx, dword [esp + 0x68]
mov edi, dword [esi]
lea ebx, [ecx + esi]
push ebx
push eax
call fcn.0176477c
mov edx, dword [esp + 0x5c]
add esp, 8
test eax, eax
mov dword [edx + esi], eax
je 0x17652b3
mov ebx, dword [ebx]
cmp ebx, dword [esp + 0x24]
jbe 0x1764ce2
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x14]
add eax, 1
add esi, 4
cmp eax, dword [esp + 0x2c]
mov dword [esp + 0x14], eax
jb 0x1764c2c
mov ebx, dword [esp + 0x34]
cmp dword [esp + 0x28], 0
je 0x1764eb4
mov esi, dword [esp + 0x3c]
test esi, esi
jne 0x1764d2d
cmp dword [esp + 0x38], 1
je 0x1764eb4
push 0x1e3
push 0x100f6a5c
push 0x44
jmp 0x17652a4
cmp dword [esp + 0x38], 0
mov dword [esp + 0x14], 0
je 0x1764d4d
push 0x1ef
push 0x100f6a5c
push 0x44
jmp 0x17652a4
mov ecx, dword [esp + 0x78]
mov edi, dword [esi + 0xc]
lea eax, [esp + 0x14]
push eax
push ecx
mov dword [ebx + ebp*4], edi
call fcn.0176477c
mov ecx, eax
add esp, 8
test ecx, ecx
mov dword [esp + 0x50], ecx
je 0x17652b3
mov eax, dword [esp + 0x14]
cmp eax, dword [esp + 0x24]
ja 0x1764da9
lea edx, [ebp + 1]
mov dword [esp + 0x18], edx
mov edx, dword [esp + 0x20]
mov dword [edx + ebp*4], ecx
mov ecx, dword [esp + 0x1c]
mov dword [edx + ebp*4 + 4], 0
mov dword [ecx + ebp*4], eax
mov edx, dword [esi + 0x10]
mov eax, dword [esp + 0x10]
mov dword [eax + ebp*4], edx
jmp 0x1764eb4
mov edi, dword [esp + 0x40]
mov edx, dword [esp + 0x28]
imul edx, edi
cmp eax, edx
jae 0x1764ddc
xor edx, edx
lea eax, [eax + edi - 1]
div edi
cmp eax, dword [esi + 8]
jbe 0x1764dd6
push 0x217
push 0x100f6a5c
push 0x44
jmp 0x17652a4
add eax, ebp
mov dword [esp + 0x18], eax
cmp ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x3c]
mov edi, dword [edx + 0x10]
mov dword [esp + 0x38], ecx
mov ebx, ebp
jae 0x1764eab
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x20]
mov ecx, ebx
lea esi, [eax + ecx*4]
mov ecx, dword [esp + 0x10]
sub ebp, eax
sub ecx, eax
mov dword [esp + 0x68], ecx
mov eax, dword [esp + 0x18]
add eax, 0xffffffff
cmp ebx, eax
jae 0x1764e2d
mov eax, dword [esp + 0x40]
cmp dword [esp + 0x14], eax
mov dword [esi], eax
jb 0x1764ee4
sub dword [esp + 0x14], eax
jmp 0x1764e33
mov edx, dword [esp + 0x14]
mov dword [esi], edx
push 0x233
mov dword [esi + ebp + 4], 0
mov eax, dword [esi]
push 0x100f6a5c
push eax
call fcn.0175f55c
add esp, 0xc
test eax, eax
mov dword [esi + ebp], eax
je 0x1764ef5
mov ecx, dword [esi]
mov edx, dword [esp + 0x38]
push ecx
push edx
push eax
call fcn.017e83ec
mov eax, dword [esi]
add esp, 0xc
cmp eax, dword [esp + 0x24]
jbe 0x1764e78
mov dword [esp + 0x24], eax
cmp dword [edi], 0
je 0x1764f1f
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x58]
add dword [esp + 0x38], edx
mov dword [eax + esi], edi
add ebx, 1
add esi, 4
cmp ebx, dword [esp + 0x18]
lea edi, [edi + ecx*4]
jb 0x1764e0c
mov ecx, dword [esp + 0x50]
push ecx
call fcn.0175f74c
add esp, 4
mov edx, dword [esp + 0x30]
push 0x250
lea eax, [edx*4 + 4]
push 0x100f6a5c
push eax
call fcn.0175f55c
add esp, 0xc
test eax, eax
mov dword [esp + 0x4c], eax
jne 0x1764f49
push 0x253
jmp 0x176529d
push 0x228
push 0x100f6a5c
push 0x44
jmp 0x17652a4
push 0x236
push 0x100f6a5c
push 0x41
push 0xbb
push 0x10
call fcn.0175e7cc
mov eax, dword [esp + 0x64]
push eax
call fcn.0175f74c
add esp, 0x18
jmp 0x17652b3
push 0x240
push 0x100f6a5c
push 0x44
push 0xbb
push 0x10
call fcn.0175e7cc
mov ecx, dword [esp + 0x64]
push ecx
call fcn.0175f74c
add esp, 0x18
jmp 0x17652b3
mov edi, dword [esp + 0x4c]
mov ecx, dword [esp + 0x30]
lea eax, [edi + ecx*4]
xor ebp, ebp
cmp dword [esp + 0x2c], ebp
mov dword [esp + 0x58], eax
mov dword [eax], 0
jbe 0x1764fcd
mov esi, dword [esp + 0x34]
mov eax, dword [esp + 0x10]
sub eax, esi
mov dword [esp + 0x68], eax
mov dword [eax + esi], edi
mov ecx, dword [esi]
sub ecx, 1
mov edx, 1
shl edx, cl
xor ebx, ebx
test edx, edx
jbe 0x1764fbd
lea ecx, [ecx]
mov eax, dword [esp + 0x70]
push eax
call fcn.017572bc
add esp, 4
test eax, eax
mov dword [edi], eax
je 0x17652b3
mov ecx, dword [esi]
sub ecx, 1
mov edx, 1
shl edx, cl
add ebx, 1
add edi, 4
cmp ebx, edx
jb 0x1764f8c
mov eax, dword [esp + 0x68]
add ebp, 1
add esi, 4
cmp ebp, dword [esp + 0x2c]
jb 0x1764f74
mov eax, dword [esp + 0x58]
cmp edi, eax
je 0x1764fe2
push 0x266
push 0x100f6a5c
push 0x44
jmp 0x17652a4
mov eax, dword [esp + 0x70]
push eax
call fcn.017572bc
add esp, 4
test eax, eax
mov dword [esp + 0x48], eax
je 0x17652b3
xor ebp, ebp
cmp dword [esp + 0x2c], ebp
jbe 0x17650e2
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x80]
mov ebx, dword [esp + 0x34]
sub edi, esi
mov dword [esp + 0x68], edi
sub ebx, esi
cmp ebp, dword [esp + 0x7c]
mov edx, dword [esi]
mov eax, dword [edx]
jae 0x176502d
mov ecx, dword [edi + esi]
jmp 0x1765031
mov ecx, dword [esp + 0x5c]
push ecx
push eax
call fcn.017573dc
add esp, 8
test eax, eax
je 0x17652b3
cmp dword [ebx + esi], 1
jbe 0x17650d2
mov edx, dword [esi]
mov ecx, dword [esp + 0x88]
mov eax, dword [edx]
mov edx, dword [esp + 0x70]
push ecx
mov ecx, dword [esp + 0x4c]
push eax
push ecx
push edx
call fcn.0175783c
add esp, 0x10
test eax, eax
je 0x17652b3
mov ecx, dword [ebx + esi]
mov edi, 1
sub ecx, edi
mov eax, edi
shl eax, cl
cmp eax, edi
jbe 0x17650ce
lea ebx, [ebx]
mov ecx, dword [esi]
mov edx, dword [esp + 0x88]
lea eax, [ecx + edi*4]
mov ecx, dword [esp + 0x48]
push edx
mov edx, dword [eax - 4]
mov eax, dword [eax]
push ecx
mov ecx, dword [esp + 0x78]
push edx
push eax
push ecx
call fcn.017577bc
add esp, 0x14
test eax, eax
je 0x17652b3
mov ecx, dword [ebx + esi]
sub ecx, 1
mov edx, 1
shl edx, cl
add edi, 1
cmp edi, edx
jb 0x176508c
mov edi, dword [esp + 0x68]
add ebp, 1
add esi, 4
cmp ebp, dword [esp + 0x2c]
jb 0x176501e
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x30]
push eax
mov eax, dword [esp + 0x74]
push ecx
push edx
push eax
call fcn.01757aac
add esp, 0x10
test eax, eax
je 0x17652b3
mov ebx, dword [esp + 0x24]
add ebx, 0xffffffff
mov esi, 1
mov dword [esp + 0x40], esi
js 0x1765255
test esi, esi
jne 0x1765146
mov ecx, dword [esp + 0x88]
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0x70]
push ecx
push eax
push eax
push edx
call fcn.0175783c
add esp, 0x10
test eax, eax
je 0x17652b3
cmp dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
jbe 0x1765248
mov eax, dword [esp + 0x20]
mov ebp, dword [esp + 0x1c]
mov edi, dword [esp + 0x10]
sub ebp, eax
sub eax, edi
mov dword [esp + 0x68], eax
jmp 0x1765173
mov eax, dword [esp + 0x68]
add eax, edi
cmp dword [eax + ebp], ebx
jbe 0x176522c
mov eax, dword [eax]
movsx esi, byte [eax + ebx]
test esi, esi
je 0x176522c
xor eax, eax
test esi, esi
setl al
test eax, eax
je 0x1765199
neg esi
cmp eax, dword [esp + 0x44]
je 0x17651d5
cmp dword [esp + 0x40], 0
jne 0x17651c8
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x74]
mov eax, dword [esp + 0x70]
push ecx
push edx
push eax
call fcn.017578ac
add esp, 0xc
test eax, eax
je 0x17652b3
xor ecx, ecx
cmp dword [esp + 0x44], ecx
sete cl
mov dword [esp + 0x44], ecx
sar esi, 1
cmp dword [esp + 0x40], 0
je 0x1765203
mov edx, dword [edi]
mov eax, dword [edx + esi*4]
mov ecx, dword [esp + 0x74]
push eax
push ecx
call fcn.017573dc
add esp, 8
test eax, eax
je 0x17652b3
mov dword [esp + 0x40], 0
jmp 0x176522c
mov eax, dword [edi]
mov edx, dword [esp + 0x88]
mov ecx, dword [eax + esi*4]
mov eax, dword [esp + 0x74]
push edx
mov edx, dword [esp + 0x74]
push ecx
push eax
push eax
push edx
call fcn.017577bc
add esp, 0x14
test eax, eax
je 0x17652b3
mov eax, dword [esp + 0x14]
add eax, 1
add edi, 4
cmp eax, dword [esp + 0x18]
mov dword [esp + 0x14], eax
jb 0x176516f
mov esi, dword [esp + 0x40]
sub ebx, 1
jns 0x176511f
test esi, esi
je 0x1765269
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x70]
push eax
push ecx
call fcn.017574bc
add esp, 8
jmp 0x176528a
cmp dword [esp + 0x44], 0
je 0x176528e
mov edx, dword [esp + 0x88]
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x70]
push edx
push eax
push ecx
call fcn.017578ac
add esp, 0xc
test eax, eax
je 0x17652b3
mov dword [esp + 0x64], 1
jmp 0x17652b3
push 0x1c3
push 0x100f6a5c
push 0x41
push 0xbb
push 0x10
call fcn.0175e7cc
add esp, 0x14
mov eax, dword [esp + 0x60]
test eax, eax
je 0x17652c4
push eax
call fcn.01755fdc
add esp, 4
mov eax, dword [esp + 0x48]
test eax, eax
je 0x17652d5
push eax
call fcn.0175736c
add esp, 4
mov eax, dword [esp + 0x34]
test eax, eax
je 0x17652e6
push eax
call fcn.0175f74c
add esp, 4
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x17652f7
push eax
call fcn.0175f74c
add esp, 4
mov edi, dword [esp + 0x20]
test edi, edi
je 0x1765328
mov eax, dword [edi]
test eax, eax
mov esi, edi
je 0x176531f
jmp 0x176530c
push eax
call fcn.0175f74c
mov eax, dword [esi + 4]
add esi, 4
add esp, 4
test eax, eax
jne 0x176530c
push edi
call fcn.0175f74c
add esp, 4
mov edi, dword [esp + 0x4c]
test edi, edi
je 0x1765358
mov eax, dword [edi]
test eax, eax
mov esi, edi
je 0x176534f
lea esp, [esp]
push eax
call fcn.0175739c
mov eax, dword [esi + 4]
add esi, 4
add esp, 4
test eax, eax
jne 0x176533c
push edi
call fcn.0175f74c
add esp, 4
mov eax, dword [esp + 0x10]
test eax, eax
je 0x1765369
push eax
call fcn.0175f74c
add esp, 4
mov eax, dword [esp + 0x64]
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x5c
ret