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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x6696d4
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xa4
push ebx
push esi
push edi
mov esi, ecx
call fcn.005797e0
cmp eax, 1
mov dword [esp + 0x48], eax
jl 0x5a8c58
lea ecx, [esp + 0x30]
call fcn.004c50a0
xor edi, edi
mov ecx, esi
mov dword [esp + 0xb8], edi
call fcn.0057b8a0
mov ebx, eax
mov eax, 0x6e5e1c
test eax, eax
mov dword [esp + 0xc], 0x6e5e1c
je 0x5a8528
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0x10], ecx
jmp 0x5a852c
mov dword [esp + 0x10], edi
mov edx, ebx
lea ecx, [esp + 0xc]
and edx, 0xff
push ecx
mov dword [esp + 0x2c], edx
sub esp, 8
fild dword [esp + 0x34]
lea ecx, [esp + 0x3c]
fmul dword [0x6821a0]
fstp qword [esp]
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov eax, 0x6e5e1c
mov dword [esp + 0xc], 0x6e5e1c
test eax, eax
je 0x5a8582
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0x10], ecx
jmp 0x5a8586
mov dword [esp + 0x10], edi
xor edx, edx
lea ecx, [esp + 0xc]
mov dl, bh
push ecx
and edx, 0xff
sub esp, 8
mov dword [esp + 0x34], edx
lea ecx, [esp + 0x3c]
fild dword [esp + 0x34]
fmul dword [0x6821a0]
fstp qword [esp]
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov eax, 0x73206c
mov dword [esp + 0xc], 0x73206c
test eax, eax
je 0x5a85de
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0x10], ecx
jmp 0x5a85e2
mov dword [esp + 0x10], edi
shr ebx, 0x10
and ebx, 0xff
lea ecx, [esp + 0xc]
mov dword [esp + 0x28], ebx
push ecx
fild dword [esp + 0x2c]
sub esp, 8
lea ecx, [esp + 0x3c]
fmul dword [0x6821a0]
fstp qword [esp]
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov edx, 0x6f335c
mov dword [esp + 0xc], 0x6f335c
test edx, edx
je 0x5a8639
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0x10], ecx
jmp 0x5a863d
mov dword [esp + 0x10], edi
mov ecx, dword [esp + 0x48]
lea eax, [esp + 0xc]
push eax
push ecx
lea ecx, [esp + 0x38]
call fcn.004c5270
mov ecx, eax
call fcn.004c5210
mov ecx, esi
call fcn.00579af0
mov ecx, eax
dec ecx
je 0x5a882c
sub ecx, 3
jne 0x5a89c1
mov edx, 0x732060
mov dword [esp + 0xc], 0x732060
test edx, edx
je 0x5a8695
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0x10], ecx
jmp 0x5a8699
mov dword [esp + 0x10], edi
lea eax, [esp + 0xc]
lea ecx, [esp + 0x30]
push eax
call fcn.004c5210
push 0x14
lea ecx, [esp + 0x18]
mov dword [esp + 0x18], 0x6b1d94
mov dword [esp + 0x1c], edi
mov dword [esp + 0x24], 0x14
mov dword [esp + 0x20], edi
mov dword [esp + 0x28], edi
call fcn.0058b280
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 1
push ecx
mov ecx, esi
call fcn.005a8190
mov edx, 0x6f2ffc
mov dword [esp + 0x48], 0x6f2ffc
test edx, edx
je 0x5a8707
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0x4c], ecx
jmp 0x5a870b
mov dword [esp + 0x4c], edi
mov esi, 0x6e5e1c
mov eax, esi
mov dword [esp + 0x28], esi
test eax, eax
je 0x5a872e
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0x2c], ecx
jmp 0x5a8732
mov dword [esp + 0x2c], edi
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x48]
push ecx
lea edx, [esp + 0x2c]
fld dword [eax + 4]
sub esp, 8
lea ecx, [esp + 0x3c]
fstp qword [esp]
fld dword [eax]
push edx
sub esp, 8
fstp qword [esp]
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ebx, 0x6f2ff4
mov eax, ebx
mov dword [esp + 0xa0], ebx
test eax, eax
je 0x5a8798
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0xa4], ecx
jmp 0x5a879f
mov dword [esp + 0xa4], edi
mov ecx, esi
mov dword [esp + 0x88], esi
test ecx, ecx
je 0x5a87c3
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0x8c], ecx
jmp 0x5a87ca
mov dword [esp + 0x8c], edi
mov eax, dword [esp + 0x18]
lea edx, [esp + 0xa0]
push edx
lea ecx, [esp + 0x8c]
fld dword [eax + 0xc]
sub esp, 8
fstp qword [esp]
fld dword [eax + 8]
push ecx
lea ecx, [esp + 0x40]
sub esp, 8
fstp qword [esp]
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 0
mov dword [esp + 0x14], 0x6b1d94
call fcn.005a9020
jmp 0x5a8bdf
lea ecx, [esp + 0x14]
call fcn.00582070
push 1
lea ecx, [esp + 0x18]
mov byte [esp + 0xbc], 2
call fcn.00582130
mov eax, dword [esp + 0x18]
mov ecx, esi
mov ebx, eax
mov dword [eax + 4], 3
mov dword [ebx], 3
call fcn.00579ff0
test eax, eax
je 0x5a8876
lea edx, [esp + 0x14]
mov ecx, esi
push edx
call fcn.0057a080
mov ebx, dword [esp + 0x18]
mov eax, 0x6f338c
mov dword [esp + 0x98], 0x6f338c
test eax, eax
je 0x5a88a1
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0x9c], ecx
jmp 0x5a88a8
mov dword [esp + 0x9c], edi
mov ecx, 0x6f1ea8
mov dword [esp + 0xa8], 0x6f1ea8
test ecx, ecx
je 0x5a88d3
mov edi, ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0xac], ecx
jmp 0x5a88da
mov dword [esp + 0xac], edi
mov edx, 0x6e5e1c
mov dword [esp + 0x60], 0x6e5e1c
test edx, edx
je 0x5a88ff
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0x64], ecx
jmp 0x5a8903
mov dword [esp + 0x64], edi
mov eax, 0x6f1eac
mov dword [esp + 0x50], 0x6f1eac
test eax, eax
je 0x5a8928
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0x54], ecx
jmp 0x5a892c
mov dword [esp + 0x54], edi
mov edx, dword [esp + 0x20]
lea ecx, [esp + 0x98]
push ecx
mov ecx, dword [ebx]
lea eax, [esp + 0xac]
push edx
push eax
mov eax, dword [ebx + 4]
lea edx, [esp + 0x6c]
push ecx
push edx
lea ecx, [esp + 0x64]
push eax
push ecx
lea ecx, [esp + 0x4c]
call fcn.004c5210
mov ecx, eax
call fcn.004c5270
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c5270
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c5270
mov ecx, eax
call fcn.004c5210
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 0
call fcn.005820e0
mov ecx, 0x732054
mov dword [esp + 0x90], 0x732054
test ecx, ecx
je 0x5a89fb
mov edi, ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0x94], ecx
jmp 0x5a8a02
cmp eax, 1
je 0x5a8996
mov edx, 0x732060
mov dword [esp + 0x70], 0x732060
test edx, edx
je 0x5a89f0
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x70]
mov dword [esp + 0x74], ecx
xor edi, edi
push eax
jmp 0x5a8a0a
lea eax, [esp + 0x70]
mov dword [esp + 0x74], edi
push eax
jmp 0x5a8a0a
mov dword [esp + 0x94], edi
lea edx, [esp + 0x90]
push edx
lea ecx, [esp + 0x34]
call fcn.004c5210
push 0x14
lea ecx, [esp + 0x18]
mov dword [esp + 0x18], 0x6b1d94
mov dword [esp + 0x1c], edi
mov dword [esp + 0x24], 0x14
mov dword [esp + 0x20], edi
mov dword [esp + 0x28], edi
call fcn.0058b280
lea eax, [esp + 0x14]
mov ecx, esi
push eax
mov byte [esp + 0xbc], 3
call fcn.005a8190
mov ecx, 0x6f2ffc
mov dword [esp + 0x80], 0x6f2ffc
test ecx, ecx
je 0x5a8a79
mov edi, ecx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
xor edi, edi
mov dword [esp + 0x84], ecx
jmp 0x5a8a80
mov dword [esp + 0x84], edi
mov edx, 0x6e5e1c
mov dword [esp + 0x58], 0x6e5e1c
test edx, edx
je 0x5a8aa3
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x5c], ecx
jmp 0x5a8aa7
mov dword [esp + 0x5c], edi
lea eax, [esp + 0x80]
lea ecx, [esp + 0x58]
push eax
mov eax, dword [esp + 0x1c]
sub esp, 8
fld dword [eax + 4]
fstp qword [esp]
fld dword [eax]
push ecx
lea ecx, [esp + 0x40]
sub esp, 8
fstp qword [esp]
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov esi, 8
mov ebx, 0x6f2ff4
mov edx, ebx
mov dword [esp + 0x68], ebx
test edx, edx
je 0x5a8b0d
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x6c], ecx
jmp 0x5a8b15
mov dword [esp + 0x6c], 0
mov edi, 0x6e5e1c
mov eax, edi
mov dword [esp + 0x78], edi
test eax, eax
je 0x5a8b34
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x7c], ecx
jmp 0x5a8b3c
mov dword [esp + 0x7c], 0
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x68]
push ecx
lea edx, [esp + 0x7c]
fld dword [esi + eax + 4]
sub esp, 8
lea ecx, [esp + 0x3c]
fstp qword [esp]
fld dword [esi + eax]
push edx
sub esp, 8
fstp qword [esp]
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
mov ecx, eax
call fcn.004c52b0
mov ecx, eax
call fcn.004c5210
add esi, 8
cmp esi, 0x20
jl 0x5a8af1
mov edi, 0x732050
mov eax, edi
mov dword [esp + 0x40], edi
test eax, eax
je 0x5a8ba6
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x44], ecx
jmp 0x5a8bae
mov dword [esp + 0x44], 0
lea ecx, [esp + 0x40]
push ecx
lea ecx, [esp + 0x34]
call fcn.004c5210
mov eax, dword [esp + 0x18]
mov byte [esp + 0xb8], 0
test eax, eax
mov dword [esp + 0x14], 0x6b1d94
je 0x5a8bdd
push eax
call fcn.006247dc
add esp, 4
xor edi, edi
mov edx, 0x72fb94
mov dword [esp + 0x40], 0x72fb94
test edx, edx
je 0x5a8c02
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x44], ecx
jmp 0x5a8c06
mov dword [esp + 0x44], edi
lea eax, [esp + 0x40]
lea ecx, [esp + 0x30]
push eax
call fcn.004c5210
lea ecx, [esp + 0x48]
push ecx
lea ecx, [esp + 0x34]
call fcn.004c51e0
mov ecx, dword [ebp + 8]
push eax
mov byte [esp + 0xbc], 4
call fcn.00499cd0
lea ecx, [esp + 0x48]
mov byte [esp + 0xb8], 0
call fcn.00499a60
lea ecx, [esp + 0x30]
mov dword [esp + 0xb8], 0xffffffff
call fcn.004c50c0
mov ecx, dword [esp + 0xb0]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 4