Function at 0x414180
Capabilities:
Contain obfuscated stackstrings
Link many functions at runtime

Disassembly:
sub esp, 0x84
push ebx
push ebp
push esi
lea eax, [esp + 0x38]
push edi
mov bl, 0x65
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x40], 0x4f
mov byte [esp + 0x41], 0x70
mov byte [esp + 0x42], bl
mov byte [esp + 0x43], 0x6e
mov byte [esp + 0x44], 0x50
mov byte [esp + 0x45], 0x72
mov byte [esp + 0x46], 0x6f
mov byte [esp + 0x47], 0x63
mov byte [esp + 0x48], bl
mov byte [esp + 0x49], 0x73
mov byte [esp + 0x4a], 0x73
mov byte [esp + 0x4b], 0x54
mov byte [esp + 0x4c], 0x6f
mov byte [esp + 0x4d], 0x6b
mov byte [esp + 0x4e], bl
mov byte [esp + 0x4f], 0x6e
mov byte [esp + 0x50], 0
call fcn.004176f0
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
call esi
lea ecx, [esp + 0x50]
mov edi, eax
push ecx
lea ecx, [esp + 0x14]
mov byte [esp + 0x54], 0x47
mov byte [esp + 0x55], bl
mov byte [esp + 0x56], 0x74
mov byte [esp + 0x57], 0x43
mov byte [esp + 0x58], 0x75
mov byte [esp + 0x59], 0x72
mov byte [esp + 0x5a], 0x72
mov byte [esp + 0x5b], bl
mov byte [esp + 0x5c], 0x6e
mov byte [esp + 0x5d], 0x74
mov byte [esp + 0x5e], 0x50
mov byte [esp + 0x5f], 0x72
mov byte [esp + 0x60], 0x6f
mov byte [esp + 0x61], 0x63
mov byte [esp + 0x62], bl
mov byte [esp + 0x63], 0x73
mov byte [esp + 0x64], 0x73
mov byte [esp + 0x65], 0
call fcn.00417640
push eax
call esi
lea edx, [esp + 0x64]
lea ecx, [esp + 0x10]
push edx
mov byte [esp + 0x68], 0x4c
mov byte [esp + 0x69], 0x6f
mov byte [esp + 0x6a], 0x6f
mov byte [esp + 0x6b], 0x6b
mov byte [esp + 0x6c], 0x75
mov byte [esp + 0x6d], 0x70
mov byte [esp + 0x6e], 0x50
mov byte [esp + 0x6f], 0x72
mov byte [esp + 0x70], 0x69
mov byte [esp + 0x71], 0x76
mov byte [esp + 0x72], 0x69
mov byte [esp + 0x73], 0x6c
mov byte [esp + 0x74], bl
mov byte [esp + 0x75], 0x67
mov byte [esp + 0x76], bl
mov byte [esp + 0x77], 0x56
mov byte [esp + 0x78], 0x61
mov byte [esp + 0x79], 0x6c
mov byte [esp + 0x7a], 0x75
mov byte [esp + 0x7b], bl
mov byte [esp + 0x7c], 0x41
mov byte [esp + 0x7d], 0
call fcn.004176f0
push eax
call esi
mov ebp, eax
lea eax, [esp + 0x7c]
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x80], 0x41
mov byte [esp + 0x81], 0x64
mov byte [esp + 0x82], 0x6a
mov byte [esp + 0x83], 0x75
mov byte [esp + 0x84], 0x73
mov byte [esp + 0x85], 0x74
mov byte [esp + 0x86], 0x54
mov byte [esp + 0x87], 0x6f
mov byte [esp + 0x88], 0x6b
mov byte [esp + 0x89], bl
mov byte [esp + 0x8a], 0x6e
mov byte [esp + 0x8b], 0x50
mov byte [esp + 0x8c], 0x72
mov byte [esp + 0x8d], 0x69
mov byte [esp + 0x8e], 0x76
mov byte [esp + 0x8f], 0x69
mov byte [esp + 0x90], 0x6c
mov byte [esp + 0x91], bl
mov byte [esp + 0x92], 0x67
mov byte [esp + 0x93], bl
mov byte [esp + 0x94], 0x73
mov byte [esp + 0x95], 0
call fcn.004176f0
push eax
call esi
lea ecx, [esp + 0x20]
mov dword [esp + 0x18], eax
push ecx
lea ecx, [esp + 0x14]
mov byte [esp + 0x24], 0x43
mov byte [esp + 0x25], 0x6c
mov byte [esp + 0x26], 0x6f
mov byte [esp + 0x27], 0x73
mov byte [esp + 0x28], bl
mov byte [esp + 0x29], 0x48
mov byte [esp + 0x2a], 0x61
mov byte [esp + 0x2b], 0x6e
mov byte [esp + 0x2c], 0x64
mov byte [esp + 0x2d], 0x6c
mov byte [esp + 0x2e], bl
mov byte [esp + 0x2f], 0
call fcn.00417640
push eax
call esi
push str.GetCurrentProcess
lea ecx, [esp + 0x14]
mov dword [esp + 0x20], eax
mov ebx, 1
call fcn.00417640
push eax
call esi
lea edx, [esp + 0x14]
push edx
push 0x28
call eax
push eax
call edi
test eax, eax
jne 0x414421
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x84
ret
mov eax, dword [esp + 0x9c]
push str.GetLastError
neg eax
sbb eax, eax
lea ecx, [esp + 0x14]
and eax, 2
mov dword [esp + 0x30], 1
mov dword [esp + 0x3c], eax
call fcn.00417640
push eax
call esi
mov edx, dword [esp + 0x98]
lea ecx, [esp + 0x30]
push ecx
push edx
push 0
mov esi, eax
call ebp
mov ecx, dword [esp + 0x14]
push 0
push 0
lea eax, [esp + 0x34]
push 0x10
push eax
push 0
push ecx
call dword [esp + 0x30]
call esi
test eax, eax
je 0x41447d
xor ebx, ebx
mov edx, dword [esp + 0x14]
push edx
call dword [esp + 0x20]
xor eax, eax
pop edi
test ebx, ebx
pop esi
pop ebp
setne al
pop ebx
add esp, 0x84
ret