Function at 0x404950
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x406e3d
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x780
push ebx
push esi
lea eax, [esp + 0x90]
push edi
push eax
call fcn.00405270
xor eax, eax
xor ebx, ebx
mov dword [esp + 0x798], ebx
push 0xff
lea ecx, [esp + 0x1c9]
push ebx
push ecx
mov dword [esp + 0x1c], 0x82dc9d3
mov byte [esp + 0x20], bl
mov dword [esp + 0x21], eax
mov dword [esp + 0x25], eax
mov word [esp + 0x29], ax
mov byte [esp + 0x2b], al
mov byte [esp + 0x78], bl
mov dword [esp + 0x79], eax
mov dword [esp + 0x7d], eax
mov dword [esp + 0x81], eax
mov dword [esp + 0x85], eax
mov dword [esp + 0x89], eax
mov byte [esp + 0x8d], al
mov byte [esp + 0x3c], bl
mov dword [esp + 0x3d], eax
mov dword [esp + 0x41], eax
mov dword [esp + 0x45], eax
mov word [esp + 0x49], ax
mov byte [esp + 0x4b], al
mov byte [esp + 0x1d0], bl
call sub.MSVCR100.dll_memset
xor eax, eax
mov byte [esp + 0x2c], bl
mov byte [esp + 0x4c], bl
mov byte [esp + 0x64], bl
add esp, 0x10
lea ebx, [esp + 0xc]
lea ecx, [esp + 0xb0]
mov dword [esp + 0x1d], eax
mov dword [esp + 0x21], eax
mov dword [esp + 0x25], eax
mov dword [esp + 0x3d], eax
mov dword [esp + 0x41], eax
mov dword [esp + 0x45], eax
mov dword [esp + 0x49], eax
mov dword [esp + 0x4d], eax
mov word [esp + 0x51], ax
mov dword [esp + 0x55], eax
mov dword [esp + 0x59], eax
mov dword [esp + 0x5d], eax
mov dword [esp + 0x61], eax
call fcn.004010b0
lea edx, [esp + 0x10]
push edx
mov ecx, 0xc
mov edx, 0x40a34c
lea eax, [esp + 0xb4]
call section..text
mov ecx, eax
call fcn.004010b0
lea eax, [esp + 0x68]
push eax
mov ecx, 0x16
mov edx, 0x40a460
lea eax, [esp + 0xb4]
call section..text
mov ecx, eax
call fcn.004010b0
lea ecx, [esp + 0x2c]
push ecx
mov ecx, 0x10
mov edx, 0x40a478
lea eax, [esp + 0xb4]
call section..text
mov ecx, eax
call fcn.004010b0
lea edx, [esp + 0x1c0]
push edx
mov ecx, 0x100
mov edx, 0x40a35e
lea eax, [esp + 0xb4]
call section..text
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x44], edx
mov dx, word [esp + 0x7c]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x30]
mov word [esp + 0x50], dx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], edx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x7c], eax
lea edx, [esp + 0xb0]
mov dword [esp + 0x28], esp
mov edi, 0xf
mov dword [ecx + 0x14], edi
mov dword [ecx + 0x10], 0
push edx
or eax, 0xffffffff
xor ebx, ebx
mov byte [ecx], 0
call fcn.004039c0
sub esp, 0x1c
mov byte [esp + 0x7cc], 1
mov esi, esp
mov dword [esi + 0x14], edi
mov dword [esi + 0x10], ebx
lea edi, [ebx + 5]
mov eax, str.Hello
mov dword [esp + 0xc0], esp
mov byte [esi], bl
call fcn.00403aa0
sub esp, 0x1c
mov byte [esp + 0x7e8], 2
mov esi, esp
lea eax, [esp + 0x214]
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov dword [esp + 0xd8], esp
mov byte [esi], bl
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x404bc8
sub eax, edi
mov edi, eax
lea eax, [esp + 0x214]
call fcn.00403aa0
sub esp, 0x1c
mov byte [esp + 0x804], 3
mov esi, esp
lea eax, [esp + 0xc4]
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov dword [esp + 0xfc], esp
mov byte [esi], bl
lea edi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x404c10
sub eax, edi
mov edi, eax
lea eax, [esp + 0xc4]
call fcn.00403aa0
sub esp, 0x1c
mov byte [esp + 0x820], 4
mov esi, esp
lea eax, [esp + 0xc8]
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov dword [esp + 0x11c], esp
mov byte [esi], bl
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x404c51
sub eax, edi
mov edi, eax
lea eax, [esp + 0xc8]
call fcn.00403aa0
sub esp, 0x1c
mov esi, esp
mov byte [esp + 0x83c], 5
lea eax, [esp + 0xc4]
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov dword [esp + 0x128], esp
mov byte [esi], bl
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x404c92
sub eax, edx
mov edi, eax
lea eax, [esp + 0xc4]
call fcn.00403aa0
lea eax, [esp + 0x368]
push eax
mov byte [esp + 0x840], bl
call fcn.00401580
lea esi, [esp + 0x2c0]
mov byte [esp + 0x794], 6
call fcn.004017a0
test al, al
je 0x404d0a
mov ecx, esi
push ecx
call fcn.004018c0
test eax, eax
jne 0x404d0a
mov ebx, esi
call fcn.00401c60
test al, al
je 0x404d0a
mov ecx, esi
call fcn.00401f20
test al, al
je 0x404d0a
mov edx, esi
push edx
call fcn.00401ff0
test eax, eax
jne 0x404d0a
mov ecx, esi
call fcn.004024d0
lea eax, [esp + 0x2c0]
call fcn.00401450
cmp dword [esp + 0xa8], 0x10
jb 0x404d31
mov eax, dword [esp + 0x94]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov ecx, dword [esp + 0x78c]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret