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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x3c]
cmp eax, dword [ecx + 8]
jbe 0x4df6d7
sub esp, 0xbc
lea edi, [esp + 0xc4]
xor eax, eax
call fcn.00465fe7
mov ecx, dword [esp + 0xc0]
mov ebx, dword [ecx + 0x14]
test ebx, ebx
je 0x4def27
lea edi, [ecx + 0x14]
mov dword [esp + 0x68], edi
xor edx, edx
jmp 0x4def38
mov byte [esp + 0xe8], 0
add esp, 0xbc
ret
mov edi, esi
mov ebx, dword [ecx + 0xc]
mov ebp, dword [ecx + 8]
test ebx, ebx
je 0x4defc6
lea ebx, [ebx + ebx*4]
lea esi, [ebp + ebx*4 - 0x14]
mov ebx, edi
lea edi, [esp + 0x94]
call fcn.004664ce
mov ecx, dword [esp + 0xc0]
mov ebp, dword [ecx]
cmp dword [esp + 0xa0], ebp
jne 0x4defc8
mov ebp, dword [ecx + 4]
cmp dword [esp + 0xa4], ebp
jne 0x4defc8
mov ebp, dword [0x1eaa9f0]
mov esi, ebx
mov ebx, dword [esp + 0x94]
test ebp, ebp
jne 0x4def91
mov dword [ecx + 0x14], ebx
jmp 0x4def9c
mov edi, esi
mov eax, ebx
call fcn.00465d80
xor eax, eax
mov ebx, dword [esp + 0x98]
mov ebp, dword [esp + 0x9c]
mov dword [ecx], ebx
mov dword [ecx + 4], ebp
mov ebx, dword [ecx + 0x10]
mov ebp, dword [ecx + 0xc]
dec ebp
cmp ebx, ebp
jb 0x4df6cd
mov dword [ecx + 0xc], ebp
jmp 0x4def36
mov ebx, edi
mov ebp, dword [ecx + 0x14]
mov dword [esp + 0x64], ebp
mov esi, ebx
mov ebx, dword [ebp + 4]
mov edi, ebx
mov ebx, dword [ebp + 8]
mov ebp, dword [ebp + 0xc]
mov dword [esp + 0x38], ebp
mov ebp, dword [ecx]
cmp ebp, ebx
ja 0x4df6c4
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x38]
sub ebx, ebp
mov dword [esp + 0x38], ebx
neg ebx
sar ebx, 0x1f
and ebx, ebp
mov dword [esp + 0x48], ebx
add ebx, edi
mov dword [esp + 0x58], ebx
mov ebx, dword [esp + 0x34]
sub ebx, ebp
mov dword [esp + 0x44], ebx
mov ebp, dword [esp + 0x64]
mov ebx, dword [ebp + 0x10]
mov dword [esp + 0x50], ebx
mov ebx, dword [ebp + 0x14]
mov dword [esp + 0x24], ebx
mov ebx, dword [ebp + 0x18]
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x44]
test ebx, ebx
jne 0x4df077
movzx ebx, byte [ecx + 0x70]
test bl, bl
jne 0x4df53c
mov byte [ecx + 0x70], 1
mov ebx, dword [0x1eaa9f0]
lea ebp, [ecx + 0x18]
test ebx, ebx
jne 0x4df05a
mov dword [ecx + 0x14], ebp
jmp 0x4df065
mov edi, esi
mov eax, ebp
call fcn.00465d80
xor eax, eax
mov dword [ecx], 0
mov dword [ecx + 4], 0
jmp 0x4def36
mov ebx, dword [ebp]
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 0x48]
movzx ebp, byte [edi + ebx]
xchg ebp, eax
mov byte [esp + 0x23], al
xchg ebp, eax
nop
xchg ebp, eax
movzx ebx, al
xchg ebp, eax
mov dword [esp + 0x44], ebx
lea ebp, [0x9230a0]
lea ebx, [ebp + ebx*2]
movzx ebx, byte [ebx]
mov dword [esp + 0x40], ebx
mov ebx, dword [esp + 0x44]
lea ebx, [ebp + ebx*2 + 1]
movzx ebx, byte [ebx]
mov dword [esp + 0x3c], ebx
mov ebp, dword [esp + 0x40]
mov ebx, dword [esp + 0x38]
cmp ebp, ebx
ja 0x4df6bb
mov ebx, dword [ecx + 4]
mov ebp, dword [esp + 0x24]
cmp ebx, ebp
ja 0x4df6b2
mov ebp, dword [esp + 0x28]
sub ebp, ebx
mov dword [esp + 0x28], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
shl ebx, 3
sar ebp, 0x1f
and ebx, ebp
mov dword [esp + 0x44], ebx
mov ebp, dword [esp + 0x50]
add ebx, ebp
mov dword [esp + 0x60], ebx
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x28]
cmp ebx, ebp
ja 0x4df6a9
movzx ebp, byte [esp + 0x23]
xchg ebp, eax
cmp al, 0xc9
xchg ebp, eax
ja 0x4df51a
xchg ebp, eax
cmp al, 0xc8
xchg ebp, eax
jne 0x4df177
nop
mov ebx, dword [esp + 0x40]
cmp ebx, 9
jl 0x4df691
mov ebx, dword [esp + 0x58]
cmp byte [ebx], 0xc8
jne 0x4df691
nop
nop
mov ebx, dword [esp + 0x48]
mov ebp, dword [edi + ebx + 1]
mov ebx, dword [edi + ebx + 5]
test ebp, ebp
jne 0x4df16d
test ebx, ebx
jne 0x4df16d
mov ebx, dword [esp + 0x64]
test byte [ebx], al
mov ebx, dword [esp + 0x34]
mov dword [ecx], ebx
mov ebx, dword [ecx + 0x14]
mov ebx, dword [ebx + 0x14]
mov dword [ecx + 4], ebx
jmp 0x4def36
mov dword [ecx], ebp
mov dword [ecx + 4], ebx
jmp 0x4def36
xchg ebp, eax
cmp al, 0xc9
xchg ebp, eax
jne 0x4df5af
test dl, dl
jne 0x4df361
mov ebp, edi
lea edi, [esp + 0x6c]
call fcn.00465feb
nop
mov ecx, dword [esp + 0x40]
cmp ecx, 0x11
jl 0x4df679
test ebx, ebx
je 0x4df679
mov ebx, dword [esp + 0x58]
cmp byte [ebx], 0xc9
jne 0x4df679
mov dword [esp + 0x5c], ebp
mov ebx, dword [esp + 0x44]
mov ecx, dword [esp + 0x50]
mov ebp, dword [ecx + ebx + 4]
mov ecx, dword [ecx + ebx]
lea ebx, [0x687600]
cmp ecx, ebx
jne 0x4df663
mov byte [esp + 0x22], dl
mov dword [esp + 0x6c], ebp
mov ecx, dword [esp + 0x48]
mov ebp, dword [esp + 0x5c]
mov ebx, dword [ebp + ecx + 1]
mov dword [esp + 0x70], ebx
mov ebx, dword [ebp + ecx + 5]
mov dword [esp + 0x74], ebx
mov ebx, dword [ebp + ecx + 9]
mov dword [esp + 0x78], ebx
mov ecx, dword [ebp + ecx + 0xd]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0xc0]
mov ebx, dword [ecx + 4]
mov ebp, dword [ecx]
lea edi, [esp + 0xa8]
call fcn.00465feb
mov ecx, dword [esp + 0xc0]
mov edi, ecx
mov ecx, dword [ecx + 0x14]
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 0x40]
add ecx, ebp
mov dword [esp + 0xac], ecx
mov ecx, dword [esp + 0x3c]
add ecx, ebx
mov dword [esp + 0xb0], ecx
mov ecx, dword [esp + 0x78]
mov ebx, dword [esp + 0x7c]
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], ebx
mov ecx, dword [edi + 0xc]
inc ecx
mov ebx, dword [edi + 8]
mov ebp, dword [edi + 0x10]
cmp ebp, ecx
jae 0x4df2d0
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x6bbfc0]
mov dword [esp + 0x10], eax
call fcn.0044be60
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0xc0]
mov dword [ebx + 0x10], edx
mov edx, dword [0x1eaa9f0]
test edx, edx
jne 0x4df2b9
mov dword [ebx + 8], eax
jmp 0x4df2c1
lea edi, [ebx + 8]
call fcn.00465d80
movzx edx, byte [esp + 0x22]
mov esi, dword [esp + 0x68]
mov edi, ebx
mov ebx, eax
xor eax, eax
mov dword [edi + 0xc], ecx
lea ecx, [ecx + ecx*4]
lea ecx, [ebx + ecx*4 - 0x14]
mov ebx, dword [0x1eaa9f0]
test ebx, ebx
jne 0x4df2f8
mov ebx, edi
mov edi, ecx
mov ebp, esi
lea esi, [esp + 0xa8]
call fcn.004664ce
jmp 0x4df327
lea eax, [0x6bbfc0]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [esp + 0xa8]
mov dword [esp + 8], eax
call fcn.004115f0
xor eax, eax
movzx edx, byte [esp + 0x22]
mov ebx, dword [esp + 0xc0]
mov ebp, dword [esp + 0x68]
mov ecx, ebp
mov ebp, dword [0x1eaa9f0]
mov esi, ebx
mov ebx, dword [esp + 0x6c]
test ebp, ebp
jne 0x4df33e
mov dword [esi + 0x14], ebx
jmp 0x4df349
mov edi, ecx
mov eax, ebx
call fcn.00465d80
xor eax, eax
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x74]
mov dword [esi], ebx
mov dword [esi + 4], ebp
mov ecx, esi
mov esi, dword [esp + 0x68]
jmp 0x4def36
cmp ebx, 1
jne 0x4df64b
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0x50]
mov ebp, dword [ebx + edx + 4]
mov dword [esp + 0x54], ebp
mov edx, dword [ebx + edx]
mov dword [esp + 0x2c], edx
mov ebx, dword [ecx + 0x20]
mov edi, dword [esp + 0x40]
add ebx, edi
mov esi, dword [ecx + 0x24]
mov eax, dword [ecx + 0x1c]
cmp esi, ebx
jae 0x4df3c2
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp + 0xc], edi
lea eax, [0x69be80]
mov dword [esp + 0x10], eax
call fcn.0044be60
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x40]
mov dword [esp + 0x48], esi
mov dword [esp + 0x44], ebx
mov dword [esp + 0x5c], eax
sub ebx, edi
lea edx, [eax + ebx]
mov dword [esp], edx
mov dword [esp + 4], edi
call fcn.00466510
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0xc0]
mov dword [ecx + 0x20], eax
mov eax, dword [esp + 0x48]
mov dword [ecx + 0x24], eax
mov eax, dword [0x1eaa9f0]
test eax, eax
jne 0x4df407
mov ebx, dword [esp + 0x5c]
mov dword [ecx + 0x1c], ebx
jmp 0x4df413
lea edi, [ecx + 0x1c]
mov eax, dword [esp + 0x5c]
call fcn.00465d80
mov ebx, dword [ecx + 0x2c]
inc ebx
mov ebp, dword [ecx + 0x28]
mov eax, ebp
mov ebp, dword [ecx + 0x30]
cmp ebp, ebx
jae 0x4df47b
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x69b740]
mov dword [esp + 0x10], eax
call fcn.0044be60
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0xc0]
mov dword [ebx + 0x30], edx
mov edx, dword [0x1eaa9f0]
test edx, edx
jne 0x4df46a
mov dword [ebx + 0x28], eax
jmp 0x4df472
lea edi, [ebx + 0x28]
call fcn.00465d80
mov ebx, ecx
mov ecx, dword [esp + 0xc0]
mov dword [ecx + 0x2c], ebx
lea ebp, [eax + ebx*8 - 8]
mov edx, ebx
mov ebx, dword [esp + 0x2c]
mov dword [ebp], ebx
lea edi, [eax + edx*8 - 4]
mov ebx, dword [0x1eaa9f0]
test ebx, ebx
jne 0x4df4a1
mov ebx, dword [esp + 0x54]
mov dword [edi], ebx
jmp 0x4df4aa
mov eax, dword [esp + 0x54]
call fcn.00465d80
mov eax, dword [ecx + 0x20]
mov ebx, dword [ecx + 0x1c]
mov ebp, dword [ecx + 0x24]
mov edx, ebx
mov ebx, dword [esp + 0x40]
mov esi, eax
sub eax, ebx
cmp esi, eax
jb 0x4df644
sub esi, eax
sub ebp, eax
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
lea ebp, [eax + edx]
cmp ebx, esi
jge 0x4df4df
mov eax, ebx
jmp 0x4df4e3
mov eax, ebx
mov ebx, esi
mov edx, ebx
mov ebx, dword [esp + 0x58]
cmp ebp, ebx
je 0x4df508
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
call fcn.004666e0
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0xc0]
add dword [ecx], eax
inc dword [ecx + 4]
xor eax, eax
mov esi, dword [esp + 0x68]
xor edx, edx
jmp 0x4def36
xchg ebp, eax
cmp al, 0xca
xchg ebp, eax
jne 0x4df557
mov ebp, dword [esp + 0x4c]
mov edx, ebx
mov ebx, dword [esp + 0x40]
add ebx, ebp
mov dword [ecx], ebx
add dword [ecx + 4], edx
mov edx, 1
jmp 0x4def36
lea edi, [esp + 0xc4]
call fcn.00465fe7
mov byte [esp + 0xe8], 0
add esp, 0xbc
ret
xchg ebp, eax
cmp al, 0xd9
xchg ebp, eax
jne 0x4df5af
mov ebp, dword [ecx + 0xc]
mov edx, ebx
mov ebx, dword [ecx + 8]
mov esi, ebx
lea ebx, [ebp - 1]
cmp ebp, ebx
jbe 0x4df63b
lea ebx, [ebp + ebp*4]
lea esi, [esi + ebx*4 - 0x14]
lea edi, [esp + 0x80]
call fcn.004664ce
mov ecx, dword [esp + 0x8c]
mov ebx, dword [esp + 0xc0]
sub ecx, dword [ebx]
mov ebp, dword [esp + 0x40]
lea ecx, [ecx + ebp - 1]
mov ebp, dword [esp + 0x38]
cmp ecx, ebp
ja 0x4df634
mov esi, ecx
jmp 0x4df5bd
mov edx, ebx
mov ebx, ecx
mov ebp, dword [esp + 0x38]
mov ecx, dword [esp + 0x40]
mov esi, ecx
add dword [ebx], ecx
add dword [ebx + 4], edx
lea edi, [esp + 0xc4]
call fcn.00465fe7
mov ecx, dword [esp + 0x64]
mov dword [esp + 0xc4], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0xc8], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0xcc], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 0xd0], ecx
mov dword [esp + 0xd4], esi
mov dword [esp + 0xd8], ebp
mov ecx, dword [esp + 0x60]
mov dword [esp + 0xdc], ecx
mov dword [esp + 0xe0], edx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0xe4], ecx
mov byte [esp + 0xe8], 1
add esp, 0xbc
ret
mov edx, ebp
call fcn.00465e50
mov eax, ebx
mov ecx, ebp
call fcn.00465e00
mov ecx, esi
call fcn.00465e60
lea eax, [0x69bcc0]
mov dword [esp], eax
lea eax, [0x7848fc]
mov dword [esp + 4], eax
call fcn.00436d20
mov dword [esp], ecx
mov dword [esp + 4], ebx
lea eax, [0x69b740]
mov dword [esp + 8], eax
call fcn.00409400
lea eax, [0x69bcc0]
mov dword [esp], eax
lea eax, [0x784934]
mov dword [esp + 4], eax
call fcn.00436d20
lea eax, [0x69bcc0]
mov dword [esp], eax
lea eax, [0x784934]
mov dword [esp + 4], eax
call fcn.00436d20
mov ecx, ebx
mov edx, ebp
call fcn.00465e50
mov eax, ebx
mov ecx, ebp
call fcn.00465e70
mov ecx, ebp
mov edx, ebx
call fcn.00465e50
mov eax, ebp
mov ecx, ebx
call fcn.00465e70
mov ecx, ebp
mov edx, ebx
call fcn.00465e40
nop
call fcn.004649b0
jmp fcn.004deee0