Function at 0x1007cbb0
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x78
mov eax, dword [0x1008b040]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, edx
mov dword [ebp - 0x74], ecx
mov ecx, eax
mov dword [ebp - 0x3c], eax
and ecx, 0x6000000
and eax, 0x10002
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x78], eax
push esi
push edi
test ecx, ecx
je 0x1007cbfc
test eax, eax
jne 0x1007cf7c
lea ecx, [ebp - 0x47]
mov dword [ebp - 0x48], 0x6e6f635e
mov dword [ebp - 0x44], 0x74786574
mov byte [ebp - 0x40], 0
call fcn.1003aff0
test al, al
je 0x1007cf7c
mov esi, dword [0x10116ebc]
mov edi, esi
mov ecx, dword [ebp - 0x50]
mov eax, edi
mov dword [ebp - 0x4c], edi
test ecx, ecx
jne 0x1007ceb4
movss xmm0, dword [edi + 0x37d8]
movss xmm1, dword [edi + 0x3bb4]
addss xmm0, xmm0
mov esi, dword [edi + 0x3e28]
movaps xmm2, xmm1
mulss xmm2, dword [0x10085768]
addss xmm0, xmm1
movaps xmm1, xmm2
movss dword [ebp - 0x1c], xmm2
lea eax, [esi + 0x184]
movss dword [ebp - 0x28], xmm2
lea ecx, [esi + 0x18c]
push eax
addss xmm0, dword [edi + 0x37ec]
subss xmm1, xmm0
maxss xmm1, dword [0x10085708]
movss dword [ebp - 0x24], xmm1
call fcn.10042470
movss xmm0, dword [ebp - 0x1c]
ucomiss xmm0, dword [0x10085668]
lahf
test ah, 0x44
jp 0x1007ccb1
movss xmm0, dword [esi + 0x224]
mov eax, dword [ebp - 0x3c]
movss dword [esi + 0x184], xmm0
and eax, 2
and dword [edi + 0x4674], 0xfffffffe
xor edi, edi
mov esi, dword [0x10116ebc]
or eax, 0x1a8
mov dword [ebp - 0x3c], eax
test edi, edi
je 0x1007cd70
mov ecx, dword [esi + 0x3e28]
cmp byte [ecx + 0x93], 0
jne 0x1007cd70
mov ecx, dword [ecx + 0x17c]
neg ecx
sbb ecx, ecx
add ecx, 6
call fcn.100708a0
mov ecx, edi
call fcn.10038910
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x1c], eax
cmp edi, 1
jne 0x1007cd1d
or eax, 0x4000000
mov dword [ebp - 0x1c], eax
mov eax, dword [0x10116ebc]
mov cl, 0x44
mov dword [ebp - 0x38], 0x37676744
mov dword [ebp - 0x34], 0x27212821
mov dword [ebp - 0x30], 0x28262530
mov eax, dword [eax + 0x3e28]
mov word [ebp - 0x2c], 0x21
movss xmm0, dword [eax + 0xd4]
movss dword [ebp - 0x6c], xmm0
movss xmm0, dword [eax + 0xd8]
xor eax, eax
movss dword [ebp - 0x70], xmm0
xor byte [ebp + eax - 0x37], cl
inc eax
cmp eax, 0xc
jae 0x1007cd88
mov cl, byte [ebp - 0x38]
jmp 0x1007cd61
mov ecx, edi
call fcn.10038910
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x1c], eax
test edi, edi
jne 0x1007cd10
or eax, 0x2000000
jmp 0x1007cd1a
lea eax, [ebp - 0x28]
mov byte [ebp - 0x2b], 0
push eax
push ecx
xor dl, dl
lea ecx, [ebp - 0x37]
call fcn.1007cf90
add esp, 8
test al, al
je 0x1007cdbc
mov edx, dword [ebp - 0x4c]
mov eax, dword [edx + 0x592c]
xor eax, dword [ebp - 0x1c]
and eax, 0xf9ffffff
xor eax, dword [ebp - 0x1c]
mov dword [edx + 0x592c], eax
mov ecx, dword [0x10116ebc]
movss xmm0, dword [ebp - 0x6c]
test byte [ebp - 0x1c], 2
mov eax, dword [ecx + 0x3e28]
mov byte [eax + 0x90], 1
mov eax, dword [ecx + 0x3e28]
movss dword [eax + 0xd4], xmm0
movss xmm0, dword [ebp - 0x70]
movss dword [eax + 0xd8], xmm0
xorps xmm0, xmm0
mov byte [eax + 0x115], 1
mov eax, 0
sete al
movups xmmword [ebp - 0x14], xmm0
lea eax, [eax*4 + 0xc]
push eax
push dword [ebp - 0x74]
lea eax, [ebp - 0x14]
push eax
call sub.VCRUNTIME140.dll_memcpy
movups xmm0, xmmword [0x10085970]
add esp, 0xc
mov dword [ebp - 0x58], 0x1b0c020a
mov byte [ebp - 0x54], 0
xor ecx, ecx
movups xmmword [ebp - 0x68], xmm0
mov al, byte [ebp - 0x68]
xor byte [ebp + ecx - 0x67], al
inc ecx
cmp ecx, 0x13
jb 0x1007ce38
push 0
push dword [ebp - 0x1c]
lea edx, [ebp - 0x14]
mov byte [ebp - 0x54], 0
lea ecx, [ebp - 0x67]
call fcn.10078ce0
mov esi, dword [0x10116ebc]
inc edi
add esp, 8
mov eax, dword [esi + 0x3e28]
dec dword [eax + 0xc8]
cmp edi, 2
jl 0x1007ccd6
mov edi, dword [ebp - 0x4c]
mov ecx, esi
mov eax, dword [ecx + 0x3e28]
mov byte [eax + 0x90], 1
mov edx, dword [ecx + 0x3e28]
mov ecx, dword [edx + 0x18c]
mov eax, dword [edx + 0x194]
mov eax, dword [eax + ecx*4 - 4]
mov dword [edx + 0x184], eax
lea eax, [ecx - 1]
mov ecx, dword [ebp - 0x50]
mov dword [edx + 0x18c], eax
mov eax, esi
cmp dword [ebp - 0x78], 0
jne 0x1007cf39
test ecx, ecx
jne 0x1007cee3
mov ecx, dword [eax + 0x3e28]
cmp byte [ecx + 0x93], 0
jne 0x1007cee3
mov ecx, dword [ecx + 0x17c]
neg ecx
sbb ecx, ecx
add ecx, 6
call fcn.100708a0
mov al, byte [edi + 0x592e]
lea edx, [ebp - 0x15]
and al, 1
mov dword [ebp - 0x28], 0x706c4173
lea ecx, [ebp - 0x27]
mov dword [ebp - 0x24], 0x42206168
mov word [ebp - 0x20], 0x7261
mov byte [ebp - 0x1e], 0
mov byte [ebp - 0x15], al
call fcn.1006fa00
mov esi, dword [0x10116ebc]
test al, al
je 0x1007cf39
cmp byte [ebp - 0x15], 0
mov eax, dword [edi + 0x592c]
je 0x1007cf2e
or eax, 0x10000
jmp 0x1007cf33
and eax, 0xfffeffff
mov dword [edi + 0x592c], eax
mov eax, dword [esi + 0x3e28]
cmp dword [esi + 0x4794], eax
jne 0x1007cf60
cmp byte [esi + 0x47ed], 0
je 0x1007cf60
cmp dword [esi + 0x47cc], 0
jne 0x1007cf60
or dword [esi + 0x47f0], 2
test dword [eax + 8], 0x1000000
je 0x1007cf70
mov byte [esi + 0x3dd6], 1
call fcn.10037f00
mov byte [esi + 0x3dd6], 0
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.1007e2f7
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret