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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x48e5c1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x254
push ebx
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push esi
push edi
movlpd qword [ebp - 0x5c], xmm0
movlpd qword [ebp - 0x54], xmm0
mov dword [ebp - 0x3c], 0
call fcn.0042cc00
movaps xmm0, xmmword [0x4a8b40]
mov edi, eax
movups xmmword [ebp - 0x36], xmm0
xor ecx, ecx
mov dword [ebp - 0x16], 0x7c7d7b66
movaps xmm0, xmmword [0x4a8a90]
movups xmmword [ebp - 0x26], xmm0
mov dword [ebp - 0x12], 0x6661474d
mov word [ebp - 0xe], 0x60
nop
mov al, byte [ebp - 0x36]
xor byte [ebp + ecx - 0x35], al
inc ecx
cmp ecx, 0x28
jb 0x438220
push 0xc
mov byte [ebp - 0xd], 0
call fcn.0046ad4e
mov esi, eax
add esp, 4
mov dword [ebp - 0x44], esi
mov dword [ebp - 4], 0
mov edx, 0x29
mov ecx, dword [0x4b4f24]
mov dword [esi], 0
mov byte [esi + 8], 1
mov dword [esi + 4], 0x29
call fcn.00424500
mov dword [esi], eax
test eax, eax
je 0x43827e
push dword [esi + 4]
lea ecx, [ebp - 0x35]
push ecx
push eax
call fcn.0046c880
add esp, 0xc
push esi
mov ecx, edi
mov dword [ebp - 4], 0xffffffff
call fcn.00433fa0
test eax, eax
jne 0x4382a9
mov eax, 0xc0000138
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edi, dword [ebp + 8]
mov ebx, edi
cmp dword [edi + 0x14], 8
jb 0x4382b6
mov ebx, dword [edi]
call fcn.0042cc00
movaps xmm0, xmmword [0x4a8910]
xor ecx, ecx
mov dword [ebp + 8], eax
movups xmmword [ebp - 0x22], xmm0
mov dword [ebp - 0x12], 0x63647f79
mov word [ebp - 0xe], 0x6a
mov al, byte [ebp - 0x22]
xor byte [ebp + ecx - 0x21], al
inc ecx
cmp ecx, 0x14
jb 0x4382d8
push 0xc
mov byte [ebp - 0xd], 0
call fcn.0046ad4e
mov esi, eax
add esp, 4
mov dword [ebp - 0x44], esi
mov dword [ebp - 4], 1
mov edx, 0x15
mov ecx, dword [0x4b4f24]
mov dword [esi], 0
mov byte [esi + 8], 1
mov dword [esi + 4], 0x15
call fcn.00424500
mov dword [esi], eax
test eax, eax
je 0x438336
push dword [esi + 4]
lea ecx, [ebp - 0x21]
push ecx
push eax
call fcn.0046c880
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp + 8]
push esi
call fcn.00433fa0
test eax, eax
je 0x438351
push ebx
lea ecx, [ebp - 0x5c]
push ecx
call eax
mov ebx, dword [ebp + 0x10]
lea eax, [ebp - 0x260]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x4c], 0x1fe0000
cmp ebx, 0xffffffff
je 0x438374
lea eax, [ebp - 0x3c]
push eax
push ebx
push eax
call 0x9d269b
call fcn.0042cc00
movaps xmm0, xmmword [0x4a87f0]
xor ecx, ecx
movups xmmword [ebp - 0x36], xmm0
mov dword [ebp + 8], eax
movaps xmm0, xmmword [0x4a8890]
movups xmmword [ebp - 0x26], xmm0
mov dword [ebp - 0x16], 0x5a5b5d40
mov dword [ebp - 0x12], 0x4047616b
mov word [ebp - 0xe], 0x46
mov al, byte [ebp - 0x36]
xor byte [ebp + ecx - 0x35], al
inc ecx
cmp ecx, 0x28
jb 0x4383a8
push 0xc
mov byte [ebp - 0xd], 0
call fcn.0046ad4e
mov esi, eax
add esp, 4
mov dword [ebp + 0x10], esi
mov dword [ebp - 4], 2
mov edx, 0x29
mov ecx, dword [0x4b4f24]
mov dword [esi], 0
mov byte [esi + 8], 1
mov dword [esi + 4], 0x29
call fcn.00424500
mov dword [esi], eax
test eax, eax
je 0x438406
push dword [esi + 4]
lea ecx, [ebp - 0x35]
push ecx
push eax
call fcn.0046c880
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp + 8]
push esi
call fcn.00433fa0
test eax, eax
je 0x43843b
push 0
push 0
push 0
lea ecx, [ebp - 0x40]
push ecx
lea ecx, [ebp - 0x54]
push ecx
lea ecx, [ebp - 0x4c]
push ecx
push 0
lea ecx, [ebp - 0x5c]
push ecx
push 1
call eax
mov dword [ebp + 8], eax
jmp 0x438442
mov dword [ebp + 8], 0xc0000138
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x438457
cmp ebx, 0xffffffff
je 0x438457
push eax
push 0
call 0x935dc4
mov ebx, dword [ebp + 8]
test ebx, ebx
jne 0x4384ad
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 8]
cmp byte [eax + 0xf], bl
je 0x438481
mov eax, 0xc015001d
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp - 0x40]
mov ecx, dword [eax + 4]
mov edx, ecx
lea esi, [edx + 2]
nop dword [eax]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x438490
sub edx, esi
sar edx, 1
push edx
push ecx
mov ecx, edi
call fcn.00422410
jmp 0x43854f
cmp dword [ebp - 0x50], 0
je 0x43854f
call fcn.0042cc00
movaps xmm0, xmmword [0x4a83c0]
mov edi, eax
movups xmmword [ebp - 0x22], xmm0
mov dword [ebp - 0x12], 0x2b2c3731
xor ecx, ecx
mov word [ebp - 0xe], 0x22
mov al, byte [ebp - 0x22]
xor byte [ebp + ecx - 0x21], al
inc ecx
cmp ecx, 0x14
jb 0x4384d8
push 0xc
mov byte [ebp - 0xd], 0
call fcn.0046ad4e
mov esi, eax
add esp, 4
mov dword [ebp + 8], esi
mov dword [ebp - 4], 3
mov edx, 0x15
mov ecx, dword [0x4b4f24]
mov dword [esi], 0
mov byte [esi + 8], 1
mov dword [esi + 4], 0x15
call fcn.00424500
mov dword [esi], eax
test eax, eax
je 0x438536
push dword [esi + 4]
lea ecx, [ebp - 0x21]
push ecx
push eax
call fcn.0046c880
add esp, 0xc
push esi
mov ecx, edi
mov dword [ebp - 4], 0xffffffff
call fcn.00433fa0
test eax, eax
je 0x43854f
lea ecx, [ebp - 0x54]
push ecx
call eax
mov ecx, dword [ebp - 0xc]
mov eax, ebx
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0xc