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

Disassembly:
sub esp, 0x188
mov eax, dword [0x6019e4]
xor eax, esp
mov dword [esp + 0x184], eax
push ebx
mov ebx, dword [esp + 0x194]
push ebp
mov ebp, dword [esp + 0x194]
push esi
mov esi, ecx
mov dword [esp + 0x10], edx
push edi
push 0x15c
push 0
mov eax, dword [esi + 0x44]
sub eax, dword [esi + 0x40]
sar eax, 3
mov dword [esp + 0x20], eax
lea eax, [esp + 0x28]
push eax
call fcn.00587250
mov ecx, dword [esp + 0x1b0]
add esp, 0xc
mov eax, ecx
mov dword [esp + 0x44], ecx
and eax, 1
mov dword [esp + 0x20], esi
mov dword [esp + 0x48], eax
mov edi, ecx
mov eax, ecx
mov dword [esp + 0x3c], 0xffffffff
mov edx, ecx
mov dword [esp + 0x68], 0x96
and eax, 4
and edi, 2
and edx, 8
mov dword [esp + 0x4c], edi
and ecx, 0xc
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], edx
mov dword [esp + 0x58], ecx
test eax, eax
je 0x4247fb
xor eax, eax
mov dword [esp + 0x68], 0x3a
test edi, edi
mov dword [esp + 0x6c], 0x3b
mov dword [esp + 0x70], 0x3d
setne al
mov dword [esp + 0x74], 0x3c
add eax, 0x73
mov dword [esp + 0x78], eax
jmp 0x424827
test edx, edx
je 0x424827
mov dword [esp + 0x68], 0x6f
mov dword [esp + 0x6c], 0x70
mov dword [esp + 0x70], 0x72
mov dword [esp + 0x74], 0x71
mov dword [esp + 0x78], 0x73
mov eax, dword [esp + 0x64]
test ecx, ecx
mov edx, 0x302
mov ecx, esi
cmove eax, edx
mov edx, 0x80
push 1
mov dword [esp + 0x68], eax
call fcn.00414f10
mov edx, dword [esi + 0x44]
add esp, 4
mov ecx, esi
mov eax, dword [edx - 8]
mov dword [esp + 0x30], eax
mov eax, dword [eax + 0x14]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
sub eax, 0xffffff80
mov dword [esp + 0x2c], eax
cmp edx, dword [esi + 0x38]
jae 0x424bfc
mov edx, 0x8004080
call fcn.00432960
mov ecx, dword [esi + 0x44]
xor edx, edx
or edx, 0xfff90000
mov dword [ecx], eax
mov dword [ecx + 4], edx
inc dword [eax + 4]
add dword [esi + 0x44], 8
mov ecx, dword [esi + 0x44]
mov edx, dword [esi + 0x40]
sub ecx, edx
sar ecx, 3
test ebp, ebp
lea eax, [ecx - 1]
mov dword [esp + 0x40], eax
lea eax, [ecx + ebp]
cmovns eax, ebp
cmp eax, ecx
jae 0x4248b7
lea eax, [edx + eax*8]
test eax, eax
jne 0x4248bc
mov eax, 0x5ee574
mov edi, 0xfff9
cmp word [eax + 6], di
jne 0x4248da
mov ecx, dword [eax]
test ecx, ecx
je 0x4248da
mov eax, dword [ecx]
test eax, 0x200
je 0x42492f
mov dword [esp + 0x34], ecx
mov eax, dword [esi + 0x44]
mov edx, dword [esi + 0x40]
sub eax, edx
sar eax, 3
test ebx, ebx
lea ecx, [ebx + eax]
cmovns ecx, ebx
cmp ecx, eax
jae 0x4248f8
lea eax, [edx + ecx*8]
test eax, eax
jne 0x4248fd
mov eax, 0x5ee574
cmp word [eax + 6], di
jne 0x424a1d
mov eax, dword [eax]
test eax, eax
je 0x424a1d
mov eax, dword [eax]
shr eax, 0x1b
cmp eax, 0xa
jne 0x424a0f
mov edx, ebx
mov ecx, esi
call fcn.00412ab0
fstp st(0)
jmp 0x424a1d
and eax, 0xf8000000
cmp eax, 0x10000000
jne 0x4248da
mov ecx, esi
xor edi, edi
call fcn.00414890
mov edx, ebp
mov dword [esp + 0x3c], eax
mov ecx, esi
call fcn.004115c0
push 0xe80
or edx, 0xffffffff
mov ecx, esi
call fcn.004124c0
add esp, 4
lea edx, [edi + 0x60]
mov ecx, esi
call fcn.00432e20
mov ebp, 0xfff9
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 0x40]
sub eax, ecx
sar eax, 3
lea edx, [eax - 1]
cmp edx, eax
jae 0x42498b
lea eax, [ecx + edx*8]
test eax, eax
jne 0x424990
mov eax, 0x5ee574
cmp word [eax + 6], bp
jne 0x424c10
cmp dword [eax], 0
je 0x424c10
or edx, 0xffffffff
mov ecx, esi
call fcn.004115c0
mov edx, 1
mov ecx, esi
call fcn.00433450
mov ecx, esi
test eax, eax
je 0x424a03
or edx, 0xffffffff
call fcn.00411190
mov ecx, eax
call fcn.00424580
mov ecx, esi
test eax, eax
je 0x4249f9
or edx, 0xffffffff
call fcn.00413430
push edi
mov edx, 0xfffffffc
mov ecx, esi
call fcn.004102f0
add esp, 4
mov ecx, esi
inc edi
call fcn.00415510
jmp 0x424972
call fcn.004155f0
jmp 0x424972
call fcn.00415510
mov edi, ebp
jmp 0x4248da
cmp eax, 0xc
jne 0x424a1d
mov edx, ebx
mov ecx, esi
call fcn.00413430
mov ecx, dword [esi + 0x44]
mov eax, ecx
mov edi, dword [esi + 0x40]
sub eax, edi
sar eax, 3
test ebx, ebx
lea edx, [ebx + eax]
cmovns edx, ebx
cmp edx, eax
jae 0x424a3d
lea edx, [edi + edx*8]
test edx, edx
jne 0x424a42
mov edx, 0x5ee574
mov ebp, 0xfff0
mov dword [esp + 0x10], 0xfff8
cmp word [edx + 6], bp
ja 0x424a8a
lea eax, [esp + 0x1c]
mov edx, ebx
push eax
push 0xa
push 0
mov ecx, esi
call fcn.00413310
add esp, 0xc
mov edx, 0x5ee928
mov ecx, esi
push eax
call fcn.004140e0
mov ecx, dword [esi + 0x44]
add esp, 4
mov ebp, dword [esp + 0x10]
mov eax, dword [ecx - 8]
mov dword [esp + 0x38], eax
jmp 0x424ae1
test ebx, ebx
lea edx, [eax + ebx]
cmovns edx, ebx
cmp edx, eax
jae 0x424a9d
lea eax, [edi + edx*8]
test eax, eax
jne 0x424aa2
mov eax, 0x5ee574
mov ebp, dword [esp + 0x10]
cmp word [eax + 6], bp
jne 0x424add
mov eax, dword [eax]
test eax, eax
je 0x424add
test dword [eax], 0x200
jne 0x424add
mov edx, ebx
mov ecx, esi
call fcn.004115c0
push 0xa
push 0
mov ecx, esi
call fcn.00416540
mov ecx, dword [esi + 0x44]
add esp, 8
mov eax, dword [ecx - 8]
mov dword [esp + 0x38], eax
jmp 0x424ae1
mov eax, dword [esp + 0x38]
test eax, eax
je 0x424af1
xor edx, edx
cmp dword [eax + 0x14], edx
cmove eax, edx
mov dword [esp + 0x38], eax
cmp ecx, dword [esi + 0x38]
mov ecx, esi
jae 0x424c28
mov edx, 0x8004080
call fcn.00432960
mov ecx, dword [esi + 0x44]
xor edx, edx
or edx, 0xfff90000
mov dword [ecx], eax
mov dword [ecx + 4], edx
inc dword [eax + 4]
add dword [esi + 0x44], 8
mov ecx, dword [esi + 0x70]
mov dword [eax + 0x14], ecx
test ecx, ecx
je 0x424b2a
inc dword [ecx + 4]
mov edi, dword [esi + 0x44]
mov ecx, esi
sub edi, dword [esi + 0x40]
mov edx, dword [esp + 0x14]
sar edi, 3
call fcn.004115c0
push 0xf
mov edx, 0xfffffffe
mov ecx, esi
call fcn.004103e0
mov eax, dword [esi + 0x130]
xor ebx, ebx
mov ecx, dword [esi + 0x44]
or ebx, 0xfff80000
add esp, 4
mov dword [esp + 0x184], ebx
mov edx, dword [eax + 0x3c]
cmp ecx, dword [esi + 0x38]
jae 0x424c3c
lea eax, [ecx + 8]
mov dword [esi + 0x44], eax
mov dword [ecx], edx
mov dword [ecx + 4], ebx
cmp word [esp + 0x186], bp
jb 0x424b8b
inc dword [edx + 4]
lea edx, [edi - 1]
mov dword [esp + 0x60], 0x3e8
lea ecx, [esp + 0x20]
call fcn.00424040
test eax, eax
jne 0x424bb7
mov eax, dword [esi + 0x44]
cmp eax, dword [esi + 0x38]
jae 0x424c52
add eax, 8
mov dword [esi + 0x44], eax
jmp 0x424bcc
mov eax, dword [esp + 0x24]
mov ecx, esi
mov edx, dword [esp + 0x28]
sub eax, edx
push eax
call fcn.004140e0
add esp, 4
mov edi, dword [esp + 0x18]
mov ecx, esi
mov edx, edi
call fcn.00411a80
lea edx, [edi + 1]
mov ecx, esi
call fcn.004111f0
mov ecx, dword [esp + 0x194]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.005852a8
add esp, 0x188
ret
push str.cannot_push_beyond_allocated_stack
push 0x30011fc
mov edx, 0x605af8
call fcn.0040d970
push 0x6057a8
push 0xffffffffffffffff
push 0x852
mov edx, 0x6057b0
mov ecx, esi
call fcn.0040d990
push str.cannot_push_beyond_allocated_stack
push 0x30011fc
mov edx, 0x605af8
call fcn.0040d970
push str.cannot_push_beyond_allocated_stack
push 0x3001039
mov edx, 0x6059b0
mov ecx, esi
call fcn.0040d970
push str.cannot_push_beyond_allocated_stack
push 0x3001042
mov edx, 0x6059c0
mov ecx, esi
call fcn.0040d970
int3