Function at 0x447ee0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x608bc8
mov eax, dword fs:[0]
push eax
sub esp, 0x38
mov eax, dword [0x6ae450]
xor eax, esp
mov dword [esp + 0x30], eax
push ebx
push esi
push edi
mov eax, dword [0x6ae450]
xor eax, esp
push eax
lea eax, [esp + 0x48]
mov dword fs:[0], eax
mov edi, ecx
mov ebx, dword [ebp + 8]
movzx eax, byte [ebx]
push eax
call fcn.0044a010
push dword [ebx + 0x18]
mov ecx, edi
call fcn.004485c0
test al, al
je 0x4483fc
push dword [ebx + 0x14]
mov ecx, edi
call fcn.00449ff0
cmp byte [ebx + 0x68], 0
je 0x447f4e
mov ecx, edi
call fcn.00447e20
mov ecx, edi
call fcn.0044a580
test eax, eax
je 0x447fd8
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x14]
push eax
lea ecx, [ebx + 0x45]
call fcn.0043e200
mov eax, dword [esp + 0x14]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x66a710]
mov eax, dword [esp + 0x10]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x66a710]
cvtpd2ps xmm0, xmm0
call fcn.00447af0
movd xmm1, dword [ebx + 0x24]
lea eax, [esp + 0x18]
movd xmm2, dword [ebx + 0x28]
mov ecx, edi
cvtdq2ps xmm1, xmm1
push eax
cvtdq2ps xmm2, xmm2
movss dword [esp + 0x1c], xmm1
movss dword [esp + 0x20], xmm2
movss dword [esp + 0x24], xmm0
call fcn.004529a0
jmp 0x447fef
movd xmm2, dword [ebx + 0x28]
mov ecx, edi
movd xmm1, dword [ebx + 0x24]
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm1, xmm1
call fcn.00452950
mov eax, dword [ebx + 0x3c]
test eax, eax
je 0x447ffe
push eax
mov ecx, edi
call fcn.004486f0
push dword [ebx + 0x30]
mov ecx, edi
call fcn.0044a990
mov ecx, edi
call fcn.0044a540
test eax, eax
je 0x448027
push dword [ebx + 0x38]
mov ecx, edi
call fcn.0044a920
push dword [ebx + 0x34]
mov ecx, edi
call fcn.0044acc0
push ebx
mov ecx, edi
call fcn.00448420
mov eax, dword [ebx + 0x10]
mov ecx, dword [0x7031ec]
mov dword [edi + 0x3c], eax
mov esi, dword [ebx + 0x18]
push esi
call fcn.00498380
cmp esi, 8
jbe 0x448059
mov cl, byte [ebx]
test cl, cl
je 0x448054
cmp cl, 2
jne 0x448059
movzx eax, al
jmp 0x44805c
mov eax, dword [ebx + 0x10]
mov dword [edi + 0x3c], eax
mov ecx, edi
mov eax, dword [ebx + 0xc]
mov dword [edi + 0x44], eax
mov eax, dword [ebx + 8]
mov dword [edi + 0x40], eax
mov al, byte [ebx + 0x40]
mov byte [edi + 0x48], al
push dword [ebx + 0x18]
call fcn.0044a000
movss xmm0, dword [ebx + 0x2c]
push ecx
movss dword [esp], xmm0
call fcn.004529e0
movzx eax, word [ebx + 0x42]
mov ecx, edi
push eax
call fcn.0044a020
movzx eax, byte [ebx + 0x44]
mov ecx, edi
push eax
call fcn.0044a060
push dword [ebx + 0x1c]
mov ecx, edi
call fcn.00452040
push dword [ebx + 0x20]
mov ecx, edi
call fcn.00451fe0
cmp dword [edi + 0x168], 0x2328
jne 0x4480ea
push 1
sub esp, 0xc
lea ecx, [edi + 0x1fc]
mov dword [esp + 8], 0x3fe66666
mov dword [esp + 4], 0x3fe66666
mov dword [esp], 0x3fe66666
call fcn.0051c950
cmp dword [edi + 0x168], 0x2ee1
jne 0x44811d
push 1
sub esp, 0xc
lea ecx, [edi + 0x1fc]
mov dword [esp + 8], 0x4099999a
mov dword [esp + 4], 0x4099999a
mov dword [esp], 0x4099999a
call fcn.0051c950
cmp dword [edi + 0x168], 0x26c3
jne 0x448150
push 1
sub esp, 0xc
lea ecx, [edi + 0x1fc]
mov dword [esp + 8], 0x4099999a
mov dword [esp + 4], 0x4099999a
mov dword [esp], 0x4099999a
call fcn.0051c950
cmp dword [edi + 0x168], 0x26c4
jne 0x448183
push 1
sub esp, 0xc
lea ecx, [edi + 0x1fc]
mov dword [esp + 8], 0x40333333
mov dword [esp + 4], 0x40333333
mov dword [esp], 0x40333333
call fcn.0051c950
cmp dword [edi + 0x168], 0x2cf1
jne 0x4481b6
push 1
sub esp, 0xc
lea ecx, [edi + 0x1fc]
mov dword [esp + 8], 0x40333333
mov dword [esp + 4], 0x40333333
mov dword [esp], 0x40333333
call fcn.0051c950
cmp dword [edi + 0x168], 0x2cf2
jne 0x4481e9
push 1
sub esp, 0xc
lea ecx, [edi + 0x1fc]
mov dword [esp + 8], 0x40333333
mov dword [esp + 4], 0x40333333
mov dword [esp], 0x40333333
call fcn.0051c950
cmp dword [edi + 0x168], 0x71a3
jne 0x44821c
push 1
sub esp, 0xc
lea ecx, [edi + 0x1fc]
mov dword [esp + 8], 0x3f000000
mov dword [esp + 4], 0x3f000000
mov dword [esp], 0x3f000000
call fcn.0051c950
mov ecx, edi
call fcn.004486a0
test eax, eax
jne 0x448253
push ecx
lea ecx, [edi + 0x1fc]
mov dword [esp], eax
call fcn.0055ce60
sub esp, 8
lea ecx, [edi + 0x1fc]
mov dword [esp + 4], 0x3f000000
mov dword [esp], 0x3f800000
call fcn.0055ce20
mov ecx, edi
call fcn.0044a580
test eax, eax
jne 0x448269
lea eax, [ebx + 0x45]
mov ecx, edi
push eax
call fcn.0044fdd0
mov ecx, edi
call fcn.0044f610
mov ecx, edi
call fcn.0044fba0
test byte [ebx + 4], 2
mov ecx, edi
je 0x4482a5
push 2
call fcn.0044db20
test al, al
je 0x448293
push 9
mov ecx, edi
call fcn.00450280
mov ecx, edi
call fcn.0044a540
mov ecx, edi
test eax, eax
jne 0x4482a5
push eax
push 0x19
jmp 0x4482a9
push 1
push 1
call fcn.0044a880
push dword [ebx + 8]
mov ecx, edi
call fcn.0044ef80
mov ecx, edi
call fcn.0044b1e0
test byte [ebx + 4], 1
je 0x4482d0
lea ecx, [edi + 0x1fc]
call fcn.00559530
push dword [ebx + 4]
mov ecx, edi
call fcn.0044a0c0
push dword [0x6ffba8]
lea ecx, [edi + 0x1fc]
call fcn.0055c050
mov ecx, edi
call fcn.0044a540
test eax, eax
jne 0x448383
push dword [ebx + 0x18]
mov ecx, dword [0x7031ec]
call fcn.00498190
mov ebx, eax
test ebx, ebx
je 0x448383
mov ecx, edi
call fcn.0044a8b0
movss xmm1, dword [0x66a40c]
mov ecx, ebx
shr ecx, 0x10
mov eax, ebx
movzx ecx, cl
shr eax, 8
movzx eax, al
movd xmm0, ecx
mov ecx, edi
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [esp + 0x18], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movzx eax, bl
shr ebx, 0x18
mulss xmm0, xmm1
movss dword [esp + 0x1c], xmm0
movd xmm0, eax
lea eax, [esp + 0x18]
cvtdq2ps xmm0, xmm0
push eax
mulss xmm0, xmm1
movss dword [esp + 0x24], xmm0
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [esp + 0x28], xmm0
call fcn.0044a8c0
mov ecx, edi
call fcn.004477a0
mov ecx, edi
call fcn.0044a120
cmp eax, 0x3778
jne 0x4483fa
mov ecx, dword [edi + 0x44]
call fcn.00445460
push eax
lea ecx, [esp + 0x2c]
call fcn.00442030
mov dword [esp + 0x50], 0
lea eax, [esp + 0x28]
cmp dword [esp + 0x3c], 0x10
cmovae eax, dword [esp + 0x28]
push eax
call fcn.0050b890
add esp, 4
test al, al
je 0x4483e7
cmp dword [esp + 0x3c], 0x10
lea eax, [esp + 0x28]
lea ecx, [edi + 0x1fc]
cmovae eax, dword [esp + 0x28]
push eax
call fcn.0055b040
cmp dword [esp + 0x3c], 0x10
jb 0x4483fa
push dword [esp + 0x28]
call fcn.004c3680
add esp, 4
mov al, 1
mov ecx, dword [esp + 0x48]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x30]
xor ecx, esp
call fcn.005b509b
mov esp, ebp
pop ebp
ret 4