Function at 0x412260
Capabilities:
Access peb ldr_data
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x44f6dd
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x148
mov eax, dword [0x4664d0]
push ebx
push ebp
push esi
push edi
mov edi, ecx
push 1
xor ebx, ebx
mov esi, 0xf
push 0x45371c
lea ecx, [esp + 0x124]
mov dword [esp + 0x15c], eax
mov dword [esp + 0x24], edi
mov byte [esp + 0x1b], 1
mov dword [esp + 0x13c], esi
mov dword [esp + 0x138], ebx
mov byte [esp + 0x128], bl
call fcn.00402f40
push 1
push 0x453718
lea ecx, [esp + 0xd0]
mov dword [esp + 0x168], ebx
mov dword [esp + 0xe8], esi
mov dword [esp + 0xe4], ebx
mov byte [esp + 0xd4], bl
call fcn.00402f40
push 2
push 0x45319c
lea ecx, [esp + 0x140]
mov byte [esp + 0x168], 1
mov dword [esp + 0x158], esi
mov dword [esp + 0x154], ebx
mov byte [esp + 0x144], bl
call fcn.00402f40
mov dword [esp + 0x118], esi
mov dword [esp + 0x114], ebx
mov byte [esp + 0x104], bl
mov dword [esp + 0xc4], esi
mov dword [esp + 0xc0], ebx
mov byte [esp + 0xb0], bl
mov dword [esp + 0xfc], esi
mov dword [esp + 0xf8], ebx
mov byte [esp + 0xe8], bl
lea ecx, [edi + 0xc]
mov byte [esp + 0x160], 5
xor ebp, ebp
call fcn.00411d20
mov eax, dword [edi + 0x30]
push ebx
add edi, 0x1c
push 0x4531bb
push eax
push ebx
mov ecx, edi
call fcn.00403a50
lea ebx, [ebx]
cmp dword [esp + 0x134], 0x10
mov eax, dword [esp + 0x120]
jae 0x4123a8
lea eax, [esp + 0x120]
mov ecx, dword [esp + 0x130]
push ecx
push ebp
push eax
mov ecx, edi
call fcn.00404430
mov esi, eax
cmp esi, 0xffffffff
je 0x412656
mov eax, dword [esp + 0xe0]
mov ebp, 0x10
cmp eax, ebp
mov eax, dword [esp + 0xcc]
jae 0x4123e2
lea eax, [esp + 0xcc]
mov edx, dword [esp + 0xdc]
push edx
push esi
push eax
mov ecx, edi
call fcn.00404500
cmp eax, 0xffffffff
mov dword [esp + 0x18], eax
je 0x41264b
sub eax, esi
dec eax
push eax
lea eax, [esi + 1]
push eax
lea ecx, [esp + 0x44]
push ecx
mov ecx, edi
call fcn.00404770
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0xb8]
mov byte [esp + 0x16c], 6
call fcn.00402e50
cmp dword [esp + 0x54], ebp
mov byte [esp + 0x160], 5
jb 0x412447
mov edx, dword [esp + 0x40]
push edx
call fcn.004388a9
add esp, 4
push 1
push ebx
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0xb8]
mov dword [esp + 0x60], 0xf
mov dword [esp + 0x5c], ebx
mov byte [esp + 0x4c], bl
mov byte [esp + 0x20], 0x20
call fcn.00404430
cmp eax, 0xffffffff
je 0x4124cb
push eax
push ebx
lea ecx, [esp + 0x60]
push ecx
lea ecx, [esp + 0xb8]
call fcn.00404770
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0xb8]
mov byte [esp + 0x16c], 7
call fcn.00402e50
cmp dword [esp + 0x70], ebp
mov byte [esp + 0x160], 5
jb 0x4124bb
mov edx, dword [esp + 0x5c]
push edx
call fcn.004388a9
add esp, 4
mov dword [esp + 0x70], 0xf
mov dword [esp + 0x6c], ebx
mov byte [esp + 0x5c], bl
lea eax, [esp + 0xac]
push eax
lea ecx, [esp + 0x13c]
push ecx
lea edx, [esp + 0x7c]
push edx
call fcn.00408300
lea ecx, [esp + 0xd4]
push ecx
push eax
lea edx, [esp + 0xa4]
push edx
mov byte [esp + 0x178], 8
call fcn.00408300
add esp, 0x18
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0xf0]
mov byte [esp + 0x16c], 9
call fcn.00402e50
cmp dword [esp + 0xa8], ebp
jb 0x412537
mov eax, dword [esp + 0x94]
push eax
call fcn.004388a9
add esp, 4
cmp dword [esp + 0x8c], ebp
mov dword [esp + 0xa8], 0xf
mov dword [esp + 0xa4], ebx
mov byte [esp + 0x94], bl
mov byte [esp + 0x160], 5
jb 0x41256e
mov ecx, dword [esp + 0x78]
push ecx
call fcn.004388a9
add esp, 4
cmp dword [esp + 0xfc], ebp
mov eax, dword [esp + 0xe8]
mov dword [esp + 0x8c], 0xf
mov dword [esp + 0x88], ebx
mov byte [esp + 0x78], bl
jae 0x41259b
lea eax, [esp + 0xe8]
mov edx, dword [esp + 0xf8]
mov ecx, dword [esp + 0x18]
push edx
push ecx
push eax
mov ecx, edi
call fcn.00404430
mov ebp, eax
cmp ebp, 0xffffffff
je 0x412646
mov edx, ebp
sub edx, esi
push edx
push esi
lea eax, [esp + 0x28]
push eax
mov ecx, edi
call fcn.00404770
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x10c]
mov byte [esp + 0x16c], 0xa
call fcn.00402e50
cmp dword [esp + 0x38], 0x10
mov byte [esp + 0x160], 5
jb 0x412601
mov ecx, dword [esp + 0x24]
push ecx
call fcn.004388a9
add esp, 4
mov ecx, dword [esp + 0x1c]
lea edx, [esp + 0x100]
push edx
lea eax, [esp + 0xb0]
mov esi, 0xf
push eax
mov dword [esp + 0x40], esi
mov dword [esp + 0x3c], ebx
mov byte [esp + 0x2c], bl
call fcn.00411ea0
test al, al
je 0x41263b
add ebp, dword [esp + 0xf8]
jmp 0x412390
mov ebp, 0x10
mov byte [esp + 0x13], bl
jmp 0x412672
mov ebp, 0x10
mov esi, 0xf
mov byte [esp + 0x13], bl
jmp 0x412672
mov ecx, dword [edi + 0x14]
push ebx
push 0x4531bb
push ecx
push ebx
mov ecx, edi
call fcn.00403a50
mov ebp, 0x10
mov esi, 0xf
push ebx
push 0x4531bb
mov ecx, edi
call fcn.00402f40
cmp dword [esp + 0xfc], ebp
jb 0x412698
mov edx, dword [esp + 0xe8]
push edx
call fcn.004388a9
add esp, 4
cmp dword [esp + 0xc4], ebp
mov dword [esp + 0xfc], esi
mov dword [esp + 0xf8], ebx
mov byte [esp + 0xe8], bl
jb 0x4126c6
mov eax, dword [esp + 0xb0]
push eax
call fcn.004388a9
add esp, 4
cmp dword [esp + 0x118], ebp
mov dword [esp + 0xc4], esi
mov dword [esp + 0xc0], ebx
mov byte [esp + 0xb0], bl
jb 0x4126f4
mov ecx, dword [esp + 0x104]
push ecx
call fcn.004388a9
add esp, 4
cmp dword [esp + 0x150], ebp
mov dword [esp + 0x118], esi
mov dword [esp + 0x114], ebx
mov byte [esp + 0x104], bl
jb 0x412722
mov edx, dword [esp + 0x13c]
push edx
call fcn.004388a9
add esp, 4
cmp dword [esp + 0xe0], ebp
mov dword [esp + 0x150], esi
mov dword [esp + 0x14c], ebx
mov byte [esp + 0x13c], bl
jb 0x412750
mov eax, dword [esp + 0xcc]
push eax
call fcn.004388a9
add esp, 4
mov eax, dword [esp + 0x134]
pop edi
mov dword [esp + 0xdc], esi
pop esi
cmp eax, ebp
pop ebp
mov dword [esp + 0xd0], ebx
mov byte [esp + 0xc0], bl
pop ebx
jb 0x412784
mov ecx, dword [esp + 0x110]
push ecx
call fcn.004388a9
add esp, 4
mov ecx, dword [esp + 0x148]
mov al, byte [esp + 3]
mov dword fs:[0], ecx
mov ecx, dword [esp + 0x144]
call fcn.00422ede
add esp, 0x154
ret