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

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x458408
push eax
mov eax, dword [esp + 0x24]
mov dword fs:[0], esp
sub esp, 0x2c
test eax, eax
push ebx
push ebp
push esi
push edi
mov esi, ecx
jne 0x425a40
mov ebp, dword [esp + 0x50]
mov ebx, dword [esp + 0x58]
mov edi, dword [esp + 0x54]
cmp ebp, 0xf
jne 0x4254d1
push 1
call fcn.00425420
push ecx
mov ecx, esi
mov eax, esp
mov dword [esp + 0x5c], esp
mov dword [eax], edi
call fcn.00426000
mov eax, dword [esp + 0x5c]
mov dword [eax], 0
jmp 0x4257b3
cmp ebp, 0x110
jne 0x425502
push 1
mov ecx, esi
call fcn.00425420
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x60], esp
push edi
call fcn.00406540
mov ecx, esi
call fcn.004261d0
mov ecx, dword [esp + 0x5c]
mov dword [ecx], eax
jmp 0x4257b3
cmp ebp, 0x111
jne 0x42556e
cmp di, 0x3ea
jne 0x425522
mov ecx, esi
call fcn.00425a60
mov eax, 1
jmp 0x425a42
cmp di, 0x3f4
jne 0x42553a
mov ecx, esi
call fcn.00426410
mov eax, 1
jmp 0x425a42
cmp di, 0x3f3
jne 0x425552
mov ecx, esi
call fcn.00426be0
mov eax, 1
jmp 0x425a42
cmp di, 0x405
jne 0x425748
mov ecx, esi
call fcn.00426d00
mov eax, 1
jmp 0x425a42
cmp ebp, 0xbd0
jne 0x42559a
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x54]
push 1
push edx
push eax
push ebp
mov ecx, esi
call fcn.004271a0
mov ecx, dword [esp + 0x5c]
mov dword [ecx], eax
mov eax, 1
jmp 0x425a42
cmp ebp, 0x201
jne 0x4255cf
push 1
mov ecx, esi
call fcn.00425420
mov edx, ebx
shr edx, 0x10
movsx ecx, dx
movsx eax, bx
push ecx
push eax
push edi
mov ecx, esi
call fcn.004286c0
mov eax, dword [esp + 0x5c]
mov dword [eax], 0
jmp 0x4257b3
cmp ebp, 0x204
jne 0x4255fa
push 1
mov ecx, esi
call fcn.00425420
mov ecx, ebx
shr ecx, 0x10
movsx ecx, cx
movsx eax, bx
push ecx
push eax
push edi
mov ecx, esi
call fcn.00428710
jmp 0x4257a9
cmp ebp, 0x3925
jne 0x425626
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
push 1
push eax
push ecx
push ebp
mov ecx, esi
call fcn.00427930
mov edx, dword [esp + 0x5c]
mov dword [edx], eax
mov eax, 1
jmp 0x425a42
cmp ebp, 0x3924
jne 0x425652
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
push 1
push eax
push ecx
push ebp
mov ecx, esi
call fcn.004273e0
mov edx, dword [esp + 0x5c]
mov dword [edx], eax
mov eax, 1
jmp 0x425a42
cmp ebp, 0x3921
jne 0x42567e
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
push 1
push eax
push ecx
push ebp
mov ecx, esi
call fcn.00427cd0
mov edx, dword [esp + 0x5c]
mov dword [edx], eax
mov eax, 1
jmp 0x425a42
cmp ebp, 0x66d
jne 0x425760
mov eax, dword [0x463058]
mov dword [esp + 0x58], eax
mov ecx, edi
lea edx, [esp + 0x58]
and ecx, 0xffff
mov dword [esp + 0x44], 0
push ecx
push 0x4639e8
push edx
call fcn.00406f70
mov eax, dword [esp + 0x64]
add esp, 0xc
lea ecx, [esi + 0x230]
push eax
call fcn.00415da0
mov ecx, dword [esp + 0x58]
push ecx
lea ecx, [esi + 0x2f8]
call fcn.00415da0
mov eax, dword [esp + 0x58]
mov ecx, dword [0x46305c]
mov dword [esp + 0x44], 0xffffffff
lea edx, [eax - 0xc]
cmp edx, ecx
je 0x42570d
add eax, 0xfffffff4
push eax
call dword [0x45a2b4]
test eax, eax
jg 0x42570d
mov eax, dword [esp + 0x58]
add eax, 0xfffffff4
push eax
call fcn.0043733c
add esp, 4
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x4c]
push 0
push eax
push ebx
push edi
push ebp
push ecx
lea ecx, [esi + 0x1c]
call fcn.004232d0
test eax, eax
jne 0x425a39
add esi, 0x78
cmp ebp, 5
jne 0x425a0f
test esi, esi
je 0x4257cc
lea ebp, [esi - 0x78]
jmp 0x4257ce
cmp di, 0x3f6
jne 0x42570d
mov ecx, esi
call fcn.00427890
mov eax, 1
jmp 0x425a42
cmp ebp, 0x3938
jne 0x42578c
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x54]
push 1
push ecx
push edx
push ebp
mov ecx, esi
call fcn.00427840
mov ecx, dword [esp + 0x5c]
mov dword [ecx], eax
mov eax, 1
jmp 0x425a42
cmp ebp, 0x113
jne 0x42570d
push 1
mov ecx, esi
call fcn.00425420
push edi
mov ecx, esi
call fcn.00425f30
mov edx, dword [esp + 0x5c]
mov dword [edx], 0
mov ecx, esi
call fcn.00425410
test eax, eax
je 0x42570d
mov eax, 1
jmp 0x425a42
xor ebp, ebp
mov al, byte [esi + 0x1c]
test al, al
je 0x425803
mov edx, dword [ebp + 4]
push 0xe801
push edx
call dword [0x45a3f0]
cmp edi, 2
jne 0x4257f4
push 0
push eax
call dword [0x45a3b8]
jmp 0x42580c
test edi, edi
jne 0x425803
push 5
push eax
call dword [0x45a3b8]
jmp 0x42580c
cmp edi, 1
je 0x425a2f
mov eax, ebx
add ebp, 0x78
shr eax, 0x10
movsx edi, ax
movsx ebx, bx
test ebp, ebp
mov dword [esp + 0x60], edi
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], ebp
je 0x42582f
lea eax, [ebp - 0x78]
jmp 0x425831
xor eax, eax
mov ecx, dword [eax + 4]
lea esi, [eax + 4]
push 0xfffffffffffffff0
push ecx
mov dword [esp + 0x54], eax
mov dword [esp + 0x1c], esi
call dword [0x45a438]
test eax, 0x40000000
je 0x42586f
mov eax, dword [ebp + 0x14]
cmp eax, 0xffffffff
je 0x42586f
mov ecx, dword [ebp + 0x18]
cmp ecx, 0xffffffff
je 0x42586f
cmp ebx, eax
jge 0x425867
mov dword [esp + 0x50], eax
cmp edi, ecx
jge 0x42586f
mov dword [esp + 0x60], ecx
mov edx, dword [esi]
push edx
call dword [0x45a4d0]
test eax, eax
mov dword [esp + 0x18], eax
je 0x42588f
mov eax, dword [esi]
push 0
push 0
push 0xb
push eax
call dword [0x45a3b4]
mov eax, dword [ebp + 4]
mov dword [esp + 0x58], 0
test eax, eax
jle 0x4259d1
mov esi, dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
xor edx, edx
mov eax, dword [ecx]
lea esi, [esi + esi*2]
shl esi, 3
lea ecx, [esi + eax]
mov eax, dword [esi + eax + 4]
test ah, 0x10
je 0x42598d
shr eax, 0x10
and eax, 0xff
lea edx, [ecx + 8]
mov ebx, eax
mov eax, dword [edx]
cmp ebx, 1
mov dword [esp + 0x1c], eax
mov ebp, dword [edx + 4]
mov dword [esp + 0x20], ebp
mov edi, dword [edx + 8]
mov dword [esp + 0x24], edi
mov edx, dword [edx + 0xc]
mov dword [esp + 0x28], edx
jle 0x42593c
lea eax, [ecx + 0x24]
lea ecx, [ebx - 1]
mov dword [esp + 0x10], ecx
mov ecx, dword [eax - 4]
cmp dword [esp + 0x1c], ecx
jl 0x425908
mov dword [esp + 0x1c], ecx
mov ecx, dword [eax]
cmp ebp, ecx
jl 0x425914
mov ebp, ecx
mov dword [esp + 0x20], ebp
mov ecx, dword [eax + 4]
cmp edi, ecx
jg 0x425921
mov edi, ecx
mov dword [esp + 0x24], edi
mov ecx, dword [eax + 8]
cmp edx, ecx
jg 0x42592e
mov edx, ecx
mov dword [esp + 0x28], edx
mov ecx, dword [esp + 0x10]
add eax, 0x18
dec ecx
mov dword [esp + 0x10], ecx
jne 0x4258fb
xor edi, edi
test ebx, ebx
jle 0x425983
mov edx, dword [esp + 0x4c]
lea ebp, [edx + 0x78]
xor eax, eax
test edi, edi
jle 0x425959
mov eax, dword [esp + 0x54]
mov ecx, dword [eax]
lea eax, [ecx + esi - 0x18]
mov edx, dword [esp + 0x54]
push eax
push 1
lea ecx, [esp + 0x24]
mov eax, dword [edx]
mov edx, dword [esp + 0x68]
add eax, esi
push eax
mov eax, dword [esp + 0x5c]
push ecx
push edx
push eax
mov ecx, ebp
call fcn.00429550
inc edi
add esi, 0x18
cmp edi, ebx
jl 0x425949
mov ecx, dword [esp + 0x58]
lea ebx, [ecx + ebx - 1]
jmp 0x4259bf
mov eax, dword [esp + 0x60]
push edx
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], edx
push edx
lea edx, [esp + 0x34]
push ecx
mov ecx, dword [esp + 0x5c]
push edx
mov edx, dword [esp + 0x5c]
push eax
push ecx
lea ecx, [edx + 0x78]
call fcn.00429550
mov ebx, dword [esp + 0x58]
mov eax, dword [esp + 0x54]
inc ebx
mov dword [esp + 0x58], ebx
cmp ebx, dword [eax + 4]
jl 0x4258a2
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4259ec
mov ecx, dword [esp + 0x14]
push 0
push 1
push 0xb
mov edx, dword [ecx]
push edx
call dword [0x45a3b4]
mov ecx, dword [esp + 0x14]
push 0x185
push 0
push 0
call fcn.00428fd0
mov eax, dword [esp + 0x5c]
mov dword [eax], 0
mov eax, 1
jmp 0x425a42
cmp ebp, 0x24
jne 0x425a40
mov ecx, dword [esi + 0x14]
or eax, 0xffffffff
cmp ecx, eax
je 0x425a2f
cmp dword [esi + 0x18], eax
je 0x425a2f
mov ecx, dword [esi + 0x14]
mov dword [ebx + 0x18], ecx
mov edx, dword [esi + 0x18]
mov dword [ebx + 0x1c], edx
mov eax, dword [esp + 0x5c]
mov dword [eax], 0
mov eax, 1
jmp 0x425a42
xor eax, eax
mov ecx, dword [esp + 0x3c]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x38
ret 0x18