Function at 0x4310e0
Capabilities:
Access peb ldr_data

Disassembly:
sub esp, 0x18
mov edi, dword [esp + 0x20]
mov ebx, dword fs:[0x14]
mov ecx, dword [ebx]
mov eax, dword [ecx + 0x18]
mov edx, dword [eax + 0x70]
inc edx
mov dword [eax + 0x70], edx
mov eax, 0xfffffade
mov dword [ecx + 8], eax
mov eax, 1
mov byte [ecx + 0x85], al
mov ebp, dword [esp + 0x1c]
mov ebx, dword fs:[0x14]
mov eax, dword [ebx]
mov dword [eax + 0x24], ebp
mov dword [eax + 0x20], edi
xor edx, edx
mov dword [eax + 0x34], edx
xor edx, edx
mov dword [eax + 0x30], edx
xor edx, edx
mov dword [eax + 0x2c], edx
mov dword [eax + 0x28], eax
mov dword [ecx + 0x3c], edi
mov eax, dword [esp + 0x1c]
mov dword [ecx + 0x40], eax
mov dword [esp + 0xc], ecx
mov dword [esp], ecx
mov dword [esp + 4], 2
mov dword [esp + 8], 3
call fcn.0042d790
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx + 0x3c]
mov ebp, dword [ecx]
cmp edx, ebp
jb 0x43133a
mov edx, dword [ecx + 4]
mov ebp, dword [ecx + 0x3c]
cmp edx, ebp
jb 0x43133a
movzx ebx, byte [0x6d1bc8]
cmp bl, 0
je 0x4311c5
mov ebx, 0x6197c8
mov dword [esp], ebx
call fcn.00450ca0
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov ebx, dword fs:[0x14]
mov eax, dword [ebx]
mov dword [eax + 0x24], edx
mov dword [eax + 0x20], ecx
xor ecx, ecx
mov dword [eax + 0x34], ecx
xor ecx, ecx
mov dword [eax + 0x30], ecx
xor ecx, ecx
mov dword [eax + 0x2c], ecx
mov dword [eax + 0x28], eax
mov ebx, 0x6c8d20
mov dword [esp], ebx
add dword [esp], 0x80
call fcn.004cfbd0
mov ecx, dword [esp + 0xc]
mov ebx, dword [esp + 4]
cmp ebx, 0
je 0x431335
mov ebx, 0x619678
mov dword [esp], ebx
call fcn.00450ca0
mov ecx, dword [esp + 0xc]
mov ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov ebx, dword fs:[0x14]
mov eax, dword [ebx]
mov dword [eax + 0x24], ebp
mov dword [eax + 0x20], edx
xor edx, edx
mov dword [eax + 0x34], edx
xor edx, edx
mov dword [eax + 0x30], edx
xor edx, edx
mov dword [eax + 0x2c], edx
mov dword [eax + 0x28], eax
mov ebp, dword [ecx + 0x18]
mov ebx, dword [ebp + 0x54]
mov ebp, dword [ebx + 0x944]
cmp ebp, 0
je 0x431277
mov ebx, 0x619780
mov dword [esp], ebx
call fcn.00450ca0
mov ecx, dword [esp + 0xc]
mov ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov ebx, dword fs:[0x14]
mov eax, dword [ebx]
mov dword [eax + 0x24], ebp
mov dword [eax + 0x20], edx
xor edx, edx
mov dword [eax + 0x34], edx
xor edx, edx
mov dword [eax + 0x30], edx
xor edx, edx
mov dword [eax + 0x2c], edx
mov dword [eax + 0x28], eax
mov ebp, dword [ecx + 0x18]
mov ebx, dword [ebp + 0x54]
mov eax, dword [ebx + 0x14]
mov ebp, dword [ecx + 0x18]
mov dword [ebp + 0x204], eax
mov eax, 1
mov byte [ecx + 0x87], al
xor eax, eax
mov ebp, dword [ecx + 0x18]
mov dword [ebp + 0xb0], eax
mov ebp, dword [ecx + 0x18]
mov ebx, dword [ebp + 0x54]
xor eax, eax
mov dword [ebx + 0x18], eax
mov ebp, dword [ecx + 0x18]
mov ebx, dword [ebp + 0x54]
mov dword [esp], ebx
cmp dword [esp], 0
je 0x43132d
add dword [esp], 8
mov dword [esp + 4], 2
call fcn.004cfde0
mov ebx, dword [0x6c8d94]
cmp ebx, 0
je 0x43130f
mov ebx, 0x619674
mov dword [esp], ebx
call fcn.00450ca0
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov ebx, dword fs:[0x14]
mov eax, dword [ebx]
mov dword [eax + 0x24], edx
mov dword [eax + 0x20], ecx
xor ecx, ecx
mov dword [eax + 0x34], ecx
xor ecx, ecx
mov dword [eax + 0x30], ecx
xor ecx, ecx
mov dword [eax + 0x2c], ecx
mov dword [eax + 0x28], eax
mov eax, 0xfffffade
mov ebx, dword [esp + 0xc]
mov dword [ebx + 8], eax
mov ebx, dword [esp + 0xc]
mov eax, dword [ebx + 0x18]
mov ecx, dword [eax + 0x70]
dec ecx
mov dword [eax + 0x70], ecx
add esp, 0x18
ret
mov dword [0], eax
jmp 0x4312b9
jmp 0x431228
xor eax, eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
lea eax, [esp + 0x10]
mov edx, 0x44d550
mov dword [eax], edx
mov dword [eax + 4], ecx
mov dword [esp], eax
call fcn.00450ca0
jmp 0x43117f