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

Disassembly:
mov eax, 0x3c
call fcn.00468d20
mov eax, dword [0x5d7c58]
push esi
push edi
xor esi, esi
mov edi, 1
mov dword [esp + 0x20], edi
cmp dword [eax + 0x22c], esi
je 0x42ad8c
pop edi
xor eax, eax
pop esi
add esp, 0x3c
ret
add dword [eax + 0x20], edi
mov eax, dword [0x5d7c58]
mov ecx, dword [eax + 0x20]
cmp ecx, 0x18
jge 0x42adbb
mov dword [eax + ecx*4 + 0x24], 0x1e
mov eax, dword [0x5d7c58]
cmp dword [eax + 0x244], esi
je 0x42adbb
call fcn.00427a60
mov eax, dword [0x5d7c58]
mov eax, dword [eax + 0x1d8]
mov ecx, dword [esp + 0x48]
push ebx
push ebp
push eax
push ecx
call fcn.00428320
mov edx, dword [0x5d7c58]
mov eax, dword [edx + 0x1dc]
mov ecx, dword [esp + 0x5c]
push eax
push ecx
call fcn.00428320
mov edx, dword [0x5d7c58]
mov eax, dword [edx + 0x1d8]
push eax
call fcn.004280b0
mov ecx, dword [0x5d7c58]
mov edx, dword [ecx + 0x1d8]
push edx
push edi
mov dword [esp + 0x4c], eax
call fcn.004280d0
mov eax, dword [0x5d7c58]
mov ecx, dword [eax + 0x1dc]
push ecx
push edi
call fcn.004280d0
mov edx, dword [0x5d7c58]
mov eax, dword [edx + 0x1e0]
push eax
push edi
call fcn.00427ca0
mov ecx, dword [0x5d7c58]
mov edx, dword [ecx + 0x1e4]
push edx
call fcn.00427bf0
mov eax, dword [0x5d7c58]
mov ecx, dword [eax + 0x1dc]
xor ebx, ebx
push ecx
mov dword [esp + 0x60], esi
xor ebp, ebp
xor edi, edi
mov dword [esp + 0x4c], ebx
call fcn.00428560
add esp, 0x34
test eax, eax
je 0x42b3d9
jmp 0x42ae81
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x24]
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x20]
mov eax, dword [0x5d7c58]
test edi, edi
jne 0x42af31
mov edx, dword [eax + 0x1e8]
mov ecx, dword [eax + 0x1dc]
push edx
mov edx, dword [eax + 0x1d8]
push ecx
push edx
call fcn.00426a90
mov eax, dword [0x5d7c58]
mov edx, dword [eax + 0x1dc]
mov ecx, dword [eax + 0x1d8]
mov dword [eax + 0x1d8], edx
mov eax, dword [0x5d7c58]
mov dword [eax + 0x1dc], ecx
mov eax, dword [0x5d7c58]
mov ecx, dword [eax + 0x1d4]
mov edx, dword [eax + 0x1e8]
mov eax, dword [eax + 0x1e4]
push ecx
push edx
push eax
call fcn.004264e0
mov ecx, dword [0x5d7c58]
mov eax, dword [ecx + 0x1e0]
mov ecx, dword [ecx + 0x1d4]
push eax
push ecx
push eax
call fcn.00425e10
mov eax, dword [0x5d7c58]
mov edx, dword [eax + 0x1e4]
mov ecx, dword [eax + 0x1e0]
mov dword [eax + 0x1e0], edx
mov eax, dword [0x5d7c58]
add esp, 0x24
inc dword [esp + 0x18]
mov dword [eax + 0x1e4], ecx
jmp 0x42b099
mov ecx, dword [eax + 0x1e8]
mov edx, dword [eax + 0x1d8]
push ecx
push ebx
push edx
call fcn.00425ed0
mov eax, dword [0x5d7c58]
mov eax, dword [eax + 0x1d8]
push eax
push esi
push eax
call fcn.00425ed0
mov eax, dword [0x5d7c58]
mov ecx, dword [eax + 0x1d4]
mov edx, dword [eax + 0x1dc]
push ecx
push edi
push edx
call fcn.00425ed0
mov eax, dword [0x5d7c58]
mov eax, dword [eax + 0x1dc]
push eax
push ebp
push eax
call fcn.00425ed0
mov ecx, dword [0x5d7c58]
mov eax, dword [ecx + 0x1d8]
mov ecx, dword [ecx + 0x1d4]
add esp, 0x30
cmp dword [esp + 0x28], 0
push eax
jne 0x42afbf
push eax
push ecx
call fcn.00425bc0
mov ecx, dword [0x5d7c58]
mov eax, dword [ecx + 0x1dc]
mov edx, dword [ecx + 0x1e8]
push eax
push eax
push edx
jmp 0x42afdb
push ecx
push eax
call fcn.00425bc0
mov ecx, dword [0x5d7c58]
mov eax, dword [ecx + 0x1dc]
mov edx, dword [ecx + 0x1e8]
push eax
push edx
push eax
call fcn.00425bc0
mov eax, dword [0x5d7c58]
mov ecx, dword [eax + 0x1e8]
mov edx, dword [eax + 0x1e0]
add esp, 0x18
push ecx
push ebx
push edx
call fcn.00425ed0
mov eax, dword [0x5d7c58]
mov eax, dword [eax + 0x1e0]
push eax
push esi
push eax
call fcn.00425ed0
mov eax, dword [0x5d7c58]
mov ecx, dword [eax + 0x1d4]
mov edx, dword [eax + 0x1e4]
push ecx
push edi
push edx
call fcn.00425ed0
mov eax, dword [0x5d7c58]
mov eax, dword [eax + 0x1e4]
push eax
push ebp
push eax
call fcn.00425ed0
add esp, 0x30
test esi, esi
jne 0x42b05f
mov eax, dword [0x5d7c58]
mov ecx, dword [eax + 0x1e0]
mov edx, dword [eax + 0x1d4]
push ecx
push edx
call fcn.00428320
add esp, 8
jmp 0x42b07c
mov ecx, dword [0x5d7c58]
mov eax, dword [ecx + 0x1e0]
mov ecx, dword [ecx + 0x1d4]
push eax
push ecx
push eax
call fcn.00425970
add esp, 0xc
mov ecx, dword [0x5d7c58]
mov eax, dword [ecx + 0x1e4]
mov edx, dword [ecx + 0x1e8]
push eax
push edx
push eax
call fcn.00425970
add esp, 0xc
mov eax, dword [0x5d7c58]
cmp dword [eax + 0x22c], 0
jne 0x42b3de
mov eax, dword [eax + 0x1dc]
push eax
call fcn.00428560
add esp, 4
test eax, eax
je 0x42b3d9
mov ecx, dword [0x5d7c58]
mov eax, dword [ecx + 0x1d8]
mov ebx, dword [eax]
mov edx, dword [eax + 4]
cmp ebx, 1
jne 0x42b0f2
mov eax, dword [ecx + 0x1dc]
mov ebp, dword [edx]
mov eax, dword [eax + 4]
mov esi, dword [eax]
xor edx, edx
mov dword [esp + 0x38], edx
xor edi, edi
jmp 0x42b353
mov esi, dword [edx + ebx*4 - 4]
mov edi, dword [ecx]
inc esi
test edi, edi
jne 0x42b1ff
cmp ebx, 2
jle 0x42b1bd
test esi, esi
je 0x42b1bd
mov eax, dword [eax + 4]
mov edx, dword [eax + ebx*4 - 8]
mov eax, dword [eax + ebx*4 - 4]
lea ecx, [esp + 0x10]
push ecx
push esi
push edx
push eax
call fcn.0042a630
mov edx, dword [0x5d7c58]
mov edi, eax
mov eax, dword [edx + 0x1d8]
lea ecx, [esp + 0x20]
push ecx
mov ecx, dword [eax + 4]
mov edx, dword [ecx + ebx*4 - 0xc]
mov eax, dword [esp + 0x24]
push esi
push edx
push eax
call fcn.0042a630
mov ecx, dword [0x5d7c58]
mov edx, dword [ecx + 0x1dc]
mov ebp, eax
mov eax, dword [edx + 4]
mov edx, dword [eax + ebx*4 - 8]
mov eax, dword [eax + ebx*4 - 4]
lea ecx, [esp + 0x30]
push ecx
push esi
push edx
push eax
call fcn.0042a630
mov edx, dword [0x5d7c58]
mov dword [esp + 0x70], eax
mov eax, dword [edx + 0x1dc]
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [eax + 4]
mov edx, dword [ecx + ebx*4 - 0xc]
mov eax, dword [esp + 0x44]
push esi
push edx
push eax
call fcn.0042a630
mov ecx, dword [0x5d7c58]
mov dword [esp + 0x78], edi
mov edi, dword [esp + 0x80]
mov edx, dword [esp + 0x78]
add esp, 0x40
mov esi, eax
jmp 0x42b35b
mov edx, eax
mov eax, dword [edx + 4]
mov edi, dword [eax + ebx*4 - 4]
mov ebp, dword [eax + ebx*4 - 8]
mov eax, dword [ecx + 0x1dc]
mov eax, dword [eax + 4]
mov edx, dword [eax + ebx*4 - 4]
mov eax, dword [eax + ebx*4 - 8]
mov dword [esp + 0x40], edx
cmp ebx, 2
jne 0x42b1ec
mov dword [esp + 0x2c], 1
mov dword [esp + 0x38], edi
mov edi, dword [esp + 0x40]
mov edx, dword [esp + 0x38]
mov esi, eax
jmp 0x42b35b
cmp ebx, 2
jle 0x42b2f3
mov eax, dword [eax + 4]
mov edx, dword [eax + ebx*4 - 8]
mov eax, dword [eax + ebx*4 - 4]
lea ecx, [esp + 0x10]
push ecx
push esi
push edx
push edi
push eax
call fcn.0042a610
mov dword [esp + 0x48], eax
mov eax, dword [0x5d7c58]
mov ecx, dword [eax]
mov dword [esp + 0x3c], ecx
mov ecx, dword [eax + 0x1d8]
lea edx, [esp + 0x24]
push edx
mov edx, dword [ecx + 4]
mov ecx, dword [edx + ebx*4 - 0xc]
mov edx, dword [eax]
mov eax, dword [esp + 0x28]
push esi
push ecx
push edx
push eax
call fcn.0042a610
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x50]
add esp, 0x28
mov ebp, eax
xor eax, eax
push eax
push ecx
push eax
push edx
xor edi, edi
call fcn.0046a720
add ebp, eax
mov eax, dword [0x5d7c58]
mov ecx, dword [eax + 0x1dc]
mov eax, dword [ecx + 4]
mov ecx, dword [eax + ebx*4 - 8]
mov eax, dword [eax + ebx*4 - 4]
adc edi, edx
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x2c]
push esi
push ecx
push edx
push eax
mov dword [esp + 0x4c], edi
call fcn.0042a610
mov dword [esp + 0x58], eax
mov eax, dword [0x5d7c58]
mov edx, dword [eax + 0x1dc]
mov eax, dword [eax]
lea ecx, [esp + 0x24]
push ecx
mov ecx, dword [edx + 4]
mov edx, dword [ecx + ebx*4 - 0xc]
mov ecx, dword [esp + 0x28]
push esi
push edx
push eax
push ecx
call fcn.0042a610
mov edx, dword [0x5d7c58]
mov ecx, dword [edx]
mov edx, dword [esp + 0x6c]
add esp, 0x28
mov esi, eax
xor eax, eax
push eax
push edx
push eax
push ecx
xor edi, edi
call fcn.0046a720
add esi, eax
adc edi, edx
mov ecx, dword [0x5d7c58]
mov edx, dword [esp + 0x38]
jmp 0x42b35b
mov esi, dword [eax + 4]
mov ecx, dword [esi + ebx*4 - 4]
xor eax, eax
push eax
push edi
push eax
push ecx
call fcn.0046a720
mov ebp, eax
mov eax, dword [esi + ebx*4 - 8]
xor ecx, ecx
add ebp, eax
adc edx, ecx
mov dword [esp + 0x38], edx
mov edx, dword [0x5d7c58]
mov eax, dword [edx + 0x1dc]
mov eax, dword [eax + 4]
mov ecx, dword [eax + ebx*4 - 4]
mov dword [esp + 0x2c], eax
xor eax, eax
push eax
push edi
push eax
push ecx
call fcn.0046a720
mov edi, edx
mov edx, dword [esp + 0x2c]
mov esi, eax
mov eax, dword [edx + ebx*4 - 8]
mov edx, dword [esp + 0x38]
xor ecx, ecx
add esi, eax
adc edi, ecx
mov ecx, dword [0x5d7c58]
mov dword [esp + 0x2c], 1
mov eax, 1
mov dword [esp + 0x28], eax
mov dword [esp + 0x20], eax
xor eax, eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x14], 1
lea ebx, [ebx]
cmp dword [esp + 0x2c], 0
je 0x42b4d5
mov eax, esi
or eax, edi
je 0x42b3ad
push edi
push esi
push edx
push ebp
call fcn.0042ac80
mov ebx, eax
add esp, 0x10
test ebx, ebx
jne 0x42b5a3
mov ecx, dword [0x5d7c58]
mov edx, dword [esp + 0x18]
and edx, 0x80000001
jns 0x42b3be
dec edx
or edx, 0xfffffffe
inc edx
mov eax, dword [ecx + 0x1dc]
push eax
mov dword [esp + 0x1c], edx
call fcn.00428560
add esp, 4
test eax, eax
jne 0x42ae71
mov eax, dword [0x5d7c58]
or ebx, 0xffffffff
cmp dword [esp + 0x30], ebx
jne 0x42b3eb
inc dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
and ecx, 0x80000001
jns 0x42b3fc
dec ecx
or ecx, 0xfffffffe
inc ecx
cmp ecx, 1
jne 0x42b41b
mov eax, dword [eax + 0x1e0]
mov edx, dword [esp + 0x54]
push eax
push eax
push edx
call fcn.00425e70
mov eax, dword [0x5d7c58]
add esp, 0xc
mov edi, dword [esp + 0x58]
mov esi, dword [esp + 0x5c]
cmp edi, esi
je 0x42b47f
mov eax, dword [eax + 0x1dc]
mov ecx, dword [esp + 0x50]
push eax
push ecx
call fcn.004283b0
mov eax, dword [0x5d7c58]
mov ecx, dword [eax + 0x1e4]
mov edx, dword [esp + 0x5c]
push ecx
push ecx
mov ecx, dword [eax + 0x1d8]
push edx
mov edx, dword [eax + 0x1e0]
mov eax, dword [eax + 0x1dc]
push ecx
push edx
push eax
call fcn.00427480
mov ecx, dword [0x5d7c58]
mov edx, dword [ecx + 0x1e4]
push esi
push edx
call fcn.00428320
mov eax, dword [0x5d7c58]
add esp, 0x28
mov eax, dword [eax + 0x1e0]
push edi
push eax
call fcn.00428320
mov eax, dword [esp + 0x68]
add esp, 8
cmp eax, edi
je 0x42b4b1
cmp eax, esi
je 0x42b4b1
mov ecx, dword [0x5d7c58]
mov edx, dword [ecx + 0x1d8]
push eax
push edx
call fcn.00428320
add esp, 8
mov eax, dword [0x5d7c58]
add dword [eax + 0x20], ebx
mov eax, dword [0x5d7c58]
mov ecx, dword [eax + 0x1d8]
push ecx
call fcn.00428560
add esp, 4
pop ebp
pop ebx
pop edi
pop esi
add esp, 0x3c
ret
cmp dword [esp + 0x28], 0
je 0x42b53a
mov ebx, esi
sub ebx, eax
je 0x42b3ad
mov ebx, dword [esp + 0x14]
add ebx, esi
je 0x42b3ad
xor ecx, ecx
mov ebx, esi
sub ebx, eax
mov eax, edi
sbb eax, ecx
mov ecx, dword [esp + 0x20]
push eax
xor eax, eax
add ecx, ebp
push ebx
adc eax, edx
push eax
push ecx
call fcn.0042ac80
mov ebx, eax
add esp, 0x10
test ebx, ebx
je 0x42b3a7
mov ecx, dword [esp + 0x14]
xor edx, edx
add ecx, esi
adc edx, edi
push edx
mov edx, dword [esp + 0x3c]
push ecx
xor eax, eax
mov ecx, ebp
sub ecx, dword [esp + 0x24]
sbb edx, eax
push edx
push ecx
jmp 0x42b593
lea ebx, [esi + eax]
test ebx, ebx
je 0x42b3ad
mov ebx, esi
sub ebx, dword [esp + 0x14]
je 0x42b3ad
xor ecx, ecx
add eax, esi
adc ecx, edi
push ecx
push eax
xor eax, eax
mov ecx, ebp
sub ecx, dword [esp + 0x28]
sbb edx, eax
push edx
push ecx
call fcn.0042ac80
mov ebx, eax
add esp, 0x10
test ebx, ebx
je 0x42b3a7
xor edx, edx
mov eax, esi
sub eax, dword [esp + 0x14]
mov ecx, edi
sbb ecx, edx
mov edx, dword [esp + 0x1c]
push ecx
push eax
xor eax, eax
add edx, ebp
adc eax, dword [esp + 0x40]
push eax
push edx
call fcn.0042ac80
add esp, 0x10
cmp ebx, eax
jne 0x42b3a7
cmp ebx, 1
jne 0x42b5ee
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
add ecx, ebx
cmp ecx, 0x80000000
jae 0x42b3a7
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
add eax, edx
mov dword [esp + 0x24], eax
mov eax, ebp
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x38]
sub eax, esi
sbb ecx, edi
mov ebp, esi
mov dword [esp + 0x38], edi
mov dword [esp + 0x20], edx
mov dword [esp + 0x1c], ebx
mov esi, eax
mov edi, ecx
jmp 0x42b64d
mov eax, 0x80000000
sub eax, dword [esp + 0x1c]
xor edx, edx
div dword [esp + 0x14]
cmp ebx, eax
jae 0x42b3a7
mov ecx, dword [esp + 0x24]
mov eax, ebx
imul eax, ecx
add eax, dword [esp + 0x20]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x24], eax
mov eax, ebx
imul eax, ecx
add eax, dword [esp + 0x1c]
push edi
push esi
push 0
push ebx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x24], eax
call fcn.0046a720
mov ecx, ebp
sub ecx, eax
mov eax, dword [esp + 0x38]
sbb eax, edx
mov ebp, esi
mov dword [esp + 0x38], edi
mov esi, ecx
mov edi, eax
inc dword [esp + 0x18]
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x24]
xor ecx, ecx
cmp dword [esp + 0x28], ecx
sete cl
mov dword [esp + 0x28], ecx
mov ecx, dword [0x5d7c58]
jmp 0x42b380