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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x1e090
call fcn.00485cf0
push esi
push edi
mov edi, ecx
push 0
mov dword [esp + 0x44], edi
call fcn.004242af
pop ecx
mov ecx, edi
call fcn.0045717b
mov esi, eax
mov dword [esp + 0x34], esi
test esi, esi
je 0x4290d3
push str._no_description_
push dword [edi + 0x6c2cc]
call fcn.004924de
pop ecx
pop ecx
mov ecx, dword [esi]
test eax, eax
jne 0x428d45
push eax
push ecx
mov dword [esp], 0x3f800000
push eax
push 1
push eax
push eax
push esi
call dword [ecx + 0xac]
jmp 0x4290d3
push 0
push esi
call dword [ecx + 0x170]
mov eax, dword [esi]
push 0x342
push esi
call dword [eax + 0x164]
cmp byte [ebp + 0xc], 0
mov eax, dword [esi]
mov eax, dword [eax + 0xe4]
je 0x428da0
push 1
push 0x1b
push esi
call eax
cmp byte [ebp + 0x10], 0
mov eax, dword [esi]
mov eax, dword [eax + 0xe4]
je 0x428d8a
push 6
push 0x13
push esi
call eax
push 5
jmp 0x428d93
push 5
push 0x13
push esi
call eax
push 6
mov eax, dword [esi]
push 0x14
push esi
call dword [eax + 0xe4]
jmp 0x428da7
push 0
push 0x1b
push esi
call eax
mov eax, dword [ebp + 8]
mov ecx, 0x6afe8
test eax, eax
mov edx, 0x6b3a0
cmove ecx, edx
add ecx, edi
mov dword [esp + 0x14], ecx
test eax, eax
jne 0x428dcb
mov eax, dword [edi + 0x6c2d0]
jmp 0x428dd1
mov eax, dword [edi + 0x6c2cc]
push dword [edi + 0x6c29c]
mov dword [esp + 0x1c], eax
mov eax, dword [esi]
push esi
call dword [eax + 0x15c]
push dword [edi + 0x6a878]
mov eax, dword [esi]
push esi
call dword [eax + 0x170]
mov ecx, dword [esp + 0x14]
mov eax, dword [esi]
push dword [ecx]
push esi
call dword [eax + 0x1ac]
mov eax, dword [esp + 0x14]
mov ecx, edi
push dword [esp + 0x18]
push dword [eax + 4]
add eax, 8
push eax
call fcn.00417d9b
mov ecx, edi
call fcn.00457161
mov ecx, 0x400
cmp dword [eax + 0xb4], ecx
jae 0x428e39
mov ecx, edi
call fcn.00457161
mov ecx, dword [eax + 0xb4]
lea eax, [ecx - 4]
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x18], eax
test eax, eax
je 0x428e54
movss xmm0, dword [0x4c1598]
jmp 0x428e5c
movss xmm0, dword [0x4c1628]
mov eax, dword [edi + 0x6a82c]
mov ecx, dword [edi + 0x6a828]
and dword [esp + 0x24], 0
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x28], eax
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
test eax, eax
jle 0x428eb3
mov esi, dword [esp + 0x24]
lea eax, [ecx + 1]
imul eax, dword [esp + 0x28]
imul ecx, eax, 0x28
mov eax, dword [edi + 0x8ec434]
lea ecx, [ecx + 0x28]
inc esi
movss dword [ecx + eax - 4], xmm0
mov eax, dword [edi + 0x6a828]
cdq
sub eax, edx
sar eax, 1
cmp esi, eax
jl 0x428e90
mov esi, dword [esp + 0x34]
mov ecx, dword [edi + 0x6a82c]
imul ecx, dword [edi + 0x6a828]
and dword [esp + 0x10], 0
mov eax, ecx
imul eax, dword [esp + 0x18]
imul eax, eax, 3
mov dword [esp + 0x44], eax
imul eax, ecx, 3
mov dword [esp + 0x20], eax
test eax, eax
jle 0x4290ad
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
xor edx, edx
mov dword [esp + 0x14], edx
cmp dword [esp + 0x3c], edx
jle 0x4290a5
add eax, dword [esp + 0x44]
lea ecx, [esp + 0xa4]
shl eax, 2
lea esi, [esp + 0xa4]
mov dword [esp + 0x2c], eax
sub ecx, 0x28
lea eax, [esp + 0x98]
sub esi, 0x50
mov dword [esp + 0x1c], eax
lea eax, [esp + 0xa4]
sub eax, 0x78
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x68], edi
mov edi, dword [esp + 0x20]
cmp dword [esp + 0x10], edi
mov edi, dword [esp + 0x40]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x58], esi
mov dword [esp + 0x50], eax
jge 0x42907f
mov edx, dword [edi + 0x8ec434]
add eax, 0x78
mov edi, dword [edi + 0x8ec444]
add esi, 0x78
add edi, dword [esp + 0x2c]
add dword [esp + 0x2c], 0xc
mov dword [esp + 0x48], edi
push 3
pop edi
add dword [esp + 0x10], edi
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x38], edi
mov edi, edx
add edi, 0x78
mov dword [esp + 0x30], eax
add ecx, 0x78
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x6c], edi
mov dword [esp + 0x28], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x24], ecx
mov dword [esp + 0x64], ecx
imul esi, dword [eax], 0x28
lea edi, [esp + 0x70]
push 0xa
pop ecx
push 0xa
lea eax, [eax + 4]
add esi, dword [esp + 0x50]
rep movsd dword es:[edi], dword [esi]
mov edi, edx
lea esi, [esp + 0x74]
pop ecx
add edx, 0x28
sub dword [esp + 0x38], 1
rep movsd dword es:[edi], dword [esi]
jne 0x428fb2
cmp byte [ebp + 0x14], 0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x30]
je 0x429064
cmp byte [ebp + 0x18], 0
mov ecx, dword [eax]
mov eax, dword [esp + 0x28]
mov esi, dword [eax]
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
je 0x42900e
and eax, esi
and eax, ecx
mov ecx, 0xff000000
and eax, ecx
cmp eax, ecx
setb cl
jmp 0x42901b
or ecx, eax
or ecx, esi
test ecx, 0xff000000
seta cl
mov eax, dword [esp + 0x50]
test cl, cl
mov esi, dword [esp + 0x58]
cmovne eax, dword [esp + 0x54]
cmovne esi, dword [esp + 0x5c]
mov edi, dword [esp + 0x68]
mov byte [esp + 0xf], cl
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x30], eax
mov al, byte [esp + 0xf]
test al, al
lea eax, [edx + 1]
cmovne edi, dword [esp + 0x6c]
cmovne ecx, dword [esp + 0x64]
cmp byte [esp + 0xf], 0
mov dword [esp + 0x1c], edi
cmovne edx, eax
mov eax, dword [esp + 0x30]
jmp 0x42906d
mov ecx, dword [esp + 0x24]
inc edx
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x40]
mov dword [esp + 0x14], edx
cmp edx, dword [esp + 0x3c]
jl 0x428f2e
mov esi, dword [esp + 0x34]
test edx, edx
jle 0x42909d
mov eax, dword [esi]
lea ecx, [esp + 0x98]
push 0x28
push ecx
push edx
push 4
push esi
call dword [eax + 0x14c]
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
cmp eax, ecx
jl 0x428eea
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, 2
jl 0x428e46
mov eax, dword [esi]
push 0
push 0x1b
push esi
call dword [eax + 0xe4]
mov ecx, edi
call fcn.00425555
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x14