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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5832e4
sub esp, 0x5c
mov dword [esp + 0x74], 0
lea eax, [0x748ba0]
mov dword [esp], eax
mov ecx, dword [0x9f3388]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 8], ecx
call fcn.00408900
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
test eax, eax
je 0x5832db
mov ecx, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x38], eax
mov edx, dword [esp + 0x68]
cmp edx, 0x115
ja 0x5830ff
cmp edx, 0x20
ja 0x582ec1
cmp edx, 5
ja 0x582bd9
cmp edx, 2
jne 0x582b6d
mov ebx, dword [esp + 0x60]
mov ebp, dword [ebx + 0xc]
test ebp, ebp
jne 0x582b51
lea eax, [0x748ba0]
mov dword [esp], eax
mov eax, dword [0x9f3388]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 8], eax
call fcn.0040a120
mov eax, dword [esp + 0x60]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov ecx, dword [ecx + 0x38]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 0x60]
mov dword [eax + 8], 0
mov eax, dword [esp + 0x38]
test eax, eax
jne 0x582b00
mov eax, dword [esp + 0x64]
mov dword [esp], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0xc], eax
call fcn.004cc910
mov eax, dword [esp + 0x10]
mov dword [esp + 0x74], eax
nop
call fcn.00427400
add esp, 0x5c
ret
mov eax, dword [eax + 0x14]
mov ecx, dword [esp + 0x3c]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x582aca
mov dword [esp], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x10], eax
call fcn.004cc5b0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x74], eax
nop
call fcn.00427400
add esp, 0x5c
ret
mov eax, dword [ebx + 8]
mov dword [esp + 8], ebp
mov dword [esp], eax
mov dword [esp + 4], 0xfffffffc
call fcn.004ce510
jmp 0x582a86
cmp edx, 5
jne 0x582ac2
cmp edx, 5
je 0x582b93
mov eax, dword [esp + 0x60]
test byte [eax], al
add eax, 0xa8
mov dword [esp], eax
call fcn.0054e8c0
jmp 0x582ac2
mov eax, dword [esp + 0x60]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
lea ebx, [0x7a0960]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0040c840
movzx eax, byte [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test al, al
je 0x582b7b
mov eax, dword [edx + 0x18]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov dword [esp], eax
call fcn.0057ce30
jmp 0x582b7b
lea ebx, [edx - 7]
cmp ebx, 1
ja 0x582d2e
mov ebx, dword [esp + 0x60]
mov ebp, dword [ebx + 4]
mov esi, dword [ebx]
test esi, esi
je 0x582c41
mov edi, dword [esi + 8]
cmp edi, 0xa6845269
jne 0x582c1a
lea edi, [0x806240]
cmp edi, esi
jne 0x582c1a
lea eax, [ebx + 0x10c]
mov dword [esp], eax
call fcn.0054e8c0
jmp 0x582ac2
lea eax, [0x7a0960]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
call fcn.0040c840
movzx eax, byte [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test al, al
jne 0x582c47
mov ebx, dword [esp + 0x60]
jmp 0x582c07
mov dword [esp + 0x34], ecx
mov dword [esp + 0x2c], edx
mov eax, dword [edx + 0x9c]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
test eax, eax
jne 0x582d09
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0x60]
mov edx, dword [esp + 0x34]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov dword [esp], eax
call fcn.004cd300
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x48]
jmp 0x582c96
mov ecx, eax
mov eax, dword [esp + 0x24]
test ecx, ecx
jne 0x582d09
test eax, eax
je 0x582d09
mov dword [esp + 0x48], ecx
mov dword [esp], eax
call fcn.004cd300
mov eax, dword [esp + 4]
mov dword [esp + 0x24], eax
lea ecx, [0x748ba0]
mov dword [esp], ecx
mov edx, dword [0x9f3388]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00408900
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
test eax, eax
je 0x582d03
mov ecx, dword [eax + 4]
mov eax, dword [eax]
test eax, eax
jne 0x582ce7
mov eax, dword [esp + 0x48]
jmp 0x582c90
lea edx, [0x79faa0]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0040c840
mov eax, dword [esp + 0xc]
jmp 0x582c90
xor eax, eax
xor ecx, ecx
jmp 0x582cdd
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x18]
mov ecx, dword [esp + 0x34]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov dword [esp], eax
call fcn.0057ce30
mov ebx, dword [esp + 0x60]
jmp 0x582c07
cmp edx, 0x14
je 0x582d7a
cmp edx, 0x20
jne 0x582ac2
mov ebx, dword [esp + 0x60]
mov ebp, dword [ebx + 0xd0]
mov ebx, dword [ebx + 0xcc]
test ebx, ebx
je 0x582ac2
mov eax, dword [ebx + 0x14]
mov dword [esp], ebp
call eax
mov eax, dword [esp + 4]
mov dword [esp], eax
call fcn.004ce0f0
mov dword [esp + 0x74], 0
nop
call fcn.00427400
add esp, 0x5c
ret
lea edx, [0x7a0960]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0040c840
movzx eax, byte [esp + 0x14]
test al, al
je 0x582eaf
mov eax, dword [esp + 0x60]
mov dword [esp], eax
call fcn.00582370
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xc]
test ecx, ecx
je 0x582ac2
mov dword [esp + 0x58], eax
mov dword [esp + 0x54], ecx
mov dword [esp + 0x30], edx
mov dword [esp + 0x28], ebx
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
call fcn.005462a0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
test ecx, ecx
jne 0x582ac2
mov dword [esp + 0x50], eax
mov dword [esp + 8], eax
mov dword [esp], 4
lea ecx, [0x7cffd4]
mov dword [esp + 4], ecx
call fcn.00426be0
test eax, eax
jne 0x582ea5
mov eax, dword [esp + 0x60]
mov dword [esp], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x64]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x28]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x10], ebx
call fcn.00582600
mov eax, dword [esp + 0x60]
mov dword [esp], eax
call fcn.005815a0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 8]
mov ebp, dword [esp + 0x50]
mov dword [esp], ebp
mov ebp, dword [esp + 0x54]
mov dword [esp + 4], ebp
mov ebp, dword [esp + 0x58]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], ecx
call fcn.00547190
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x582ac2
mov dword [esp + 0x74], 1
nop
call fcn.00427400
add esp, 0x5c
ret
nop
call fcn.00427400
add esp, 0x5c
ret
mov dword [esp + 0x74], 0
nop
call fcn.00427400
add esp, 0x5c
ret
cmp edx, 0x7b
ja 0x58301c
cmp edx, 0x47
je 0x583004
cmp edx, 0x7b
jne 0x582ac2
lea eax, [0x748ba0]
mov dword [esp], eax
mov eax, dword [0x9f3388]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 8], eax
call fcn.00408900
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
test eax, eax
je 0x582ffb
mov ecx, dword [eax + 4]
mov eax, dword [eax]
test eax, eax
je 0x582ac2
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], ecx
mov edx, dword [eax + 0x2c]
mov dword [esp], ecx
call edx
mov eax, dword [esp + 4]
mov dword [esp + 0x4c], eax
lea ecx, [0x7a0960]
mov dword [esp], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x44]
mov dword [esp + 8], edx
call fcn.0040c840
movzx eax, byte [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test al, al
jne 0x582fcb
xor eax, eax
test eax, eax
je 0x582fb5
mov ecx, dword [esp + 0x4c]
test ecx, ecx
je 0x582ac2
mov ecx, dword [ecx]
mov dword [esp], ecx
mov dword [esp + 4], 0x4000
mov ecx, dword [esp + 0x70]
movsx edx, cx
mov dword [esp + 8], edx
shr ecx, 0x10
movsx ecx, cx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 0
call fcn.004ce6d0
mov dword [esp + 0x74], 0
nop
call fcn.00427400
add esp, 0x5c
ret
mov eax, dword [esp + 0x40]
mov eax, dword [eax + 0x50]
mov ecx, dword [esp + 0x44]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
jmp 0x582f64
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.0057d450
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
test eax, eax
jne 0x582fea
xor eax, eax
jmp 0x582f60
mov eax, dword [eax + 0x70]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
jmp 0x582f60
xor eax, eax
xor ecx, ecx
jmp 0x582f0f
mov eax, dword [esp + 0x60]
test byte [eax], al
add eax, 0x9c
mov dword [esp], eax
call fcn.0054e8c0
jmp 0x582ac2
cmp edx, 0x100
je 0x5830de
cmp edx, 0x101
je 0x5830bd
lea ebx, [edx - 0x114]
cmp ebx, 1
ja 0x582ac2
lea eax, [0x748ba0]
mov dword [esp], eax
mov eax, dword [0x9f3388]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 8], eax
call fcn.00408900
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
test eax, eax
je 0x5830b7
mov ecx, dword [eax + 4]
mov eax, dword [eax]
test eax, eax
je 0x582ac2
mov eax, dword [eax + 0xf0]
mov edx, dword [esp + 0x64]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x68]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0x10], edx
mov dword [esp], ecx
call eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x74], eax
nop
call fcn.00427400
add esp, 0x5c
ret
xor ecx, ecx
xor eax, eax
jmp 0x583072
mov eax, dword [esp + 0x60]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 8], ecx
call fcn.00582330
jmp 0x582ac2
mov eax, dword [esp + 0x60]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 8], ecx
call fcn.00582170
jmp 0x582ac2
cmp edx, 0x205
ja 0x58324b
cmp edx, 0x201
ja 0x5831b4
cmp edx, 0x200
je 0x583183
cmp edx, 0x201
jne 0x582ac2
cmp edx, 0x201
jne 0x58317d
mov ebx, dword [esp + 0x60]
mov ebp, dword [ebx + 0xc]
test ebp, ebp
je 0x583168
test byte [ebx], al
lea eax, [ebx + 0x6c]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [esp + 8], edx
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x10], ecx
call fcn.00581b50
jmp 0x582ac2
mov eax, dword [ebx + 8]
mov dword [esp], eax
call fcn.004ce030
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x60]
jmp 0x58313e
mov ebx, dword [esp + 0x60]
jmp 0x58313e
mov eax, dword [esp + 0x60]
test byte [eax], al
lea ecx, [eax + 0x84]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 8], edx
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x10], ecx
call fcn.00581b50
jmp 0x582ac2
cmp edx, 0x202
jne 0x58322e
cmp edx, 0x202
jne 0x583228
mov ebx, dword [esp + 0x60]
mov ebp, dword [ebx + 0xc]
test ebp, ebp
je 0x5831f9
test byte [ebx], al
lea eax, [ebx + 0x78]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [esp + 8], edx
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x10], ecx
call fcn.00581b50
jmp 0x582ac2
call fcn.004cddd0
movzx eax, byte [esp]
test al, al
je 0x583210
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x60]
jmp 0x5831cf
lea eax, [0x7b8db7]
mov dword [esp], eax
mov dword [esp + 4], 0xe
call fcn.0054e0c0
jmp 0x583206
mov ebx, dword [esp + 0x60]
jmp 0x5831cf
cmp edx, 0x204
je 0x58312b
cmp edx, 0x205
je 0x5831bc
jmp 0x582ac2
cmp edx, 0x208
ja 0x583270
cmp edx, 0x207
je 0x58312b
cmp edx, 0x208
je 0x5831bc
jmp 0x582ac2
cmp edx, 0x20a
je 0x5832ae
cmp edx, 0x214
je 0x582b76
cmp edx, 0x233
jne 0x582ac2
mov eax, dword [esp + 0x60]
test byte [eax], al
add eax, 0x38
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
call fcn.0054d8e0
jmp 0x582ac2
mov eax, dword [esp + 0x60]
test byte [eax], al
lea ecx, [eax + 0x90]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 0xc], ecx
call fcn.00581be0
jmp 0x582ac2
xor ecx, ecx
xor eax, eax
jmp 0x582a44
call fcn.0044be50
jmp fcn.005829f0