Function at 0x433150
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x45abe0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x18
push ebx
push ebp
push esi
mov ebx, ecx
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x10]
push eax
mov dword [esp + 0x30], 0
mov ebp, 1
call fcn.0044a149
lea ecx, [esp + 0x38]
lea edx, [esp + 0x18]
push ecx
push 0x46ba3c
push edx
mov byte [esp + 0x38], 1
call fcn.0044a691
lea eax, [esp + 0x38]
lea ecx, [esp + 0x14]
push eax
push 0x46dd7c
push ecx
mov byte [esp + 0x38], 2
call fcn.0044a691
mov eax, dword [0x471df4]
mov dword [esp + 0xc], eax
mov dword [esp + 0x20], eax
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x10]
push edx
mov byte [esp + 0x30], 5
call fcn.00449464
mov esi, eax
mov eax, dword [esp + 0x14]
push eax
lea ecx, [esp + 0x14]
call fcn.00449464
cmp esi, 0xffffffff
jne 0x433205
cmp eax, esi
jne 0x433205
cmp dword [esp + 0x3c], 0xfffffffd
je 0x43333b
xor ebp, ebp
jmp 0x433365
mov ecx, dword [esp + 0x38]
mov ecx, dword [ecx - 8]
inc ecx
cmp esi, eax
jg 0x433213
mov esi, eax
push edi
push ecx
push esi
lea ecx, [esp + 0x1c]
call fcn.004490eb
push esi
push 0x2d
lea ecx, [esp + 0x1c]
call fcn.0044a85d
push esi
push 0x2f
lea ecx, [esp + 0x1c]
mov edi, eax
call fcn.0044a85d
cmp edi, 0xffffffff
jne 0x433244
cmp eax, edi
je 0x43328a
jmp 0x43324d
cmp eax, 0xffffffff
je 0x43324f
cmp edi, eax
jl 0x43324f
mov edi, eax
cmp edi, 0xffffffff
je 0x43328a
cmp edi, esi
jle 0x4332d4
sub edi, esi
lea edx, [esp + 0x20]
push edi
push esi
push edx
lea ecx, [esp + 0x20]
call fcn.00449334
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x34], 6
call fcn.0044a4c1
lea ecx, [esp + 0x20]
mov byte [esp + 0x30], 5
call fcn.0044a3d4
push edi
jmp 0x4332ca
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x20]
mov eax, dword [eax - 8]
sub eax, esi
push eax
push esi
push ecx
lea ecx, [esp + 0x20]
call fcn.00449334
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x34], 7
call fcn.0044a4c1
lea ecx, [esp + 0x20]
mov byte [esp + 0x30], 5
call fcn.0044a3d4
mov edx, dword [esp + 0x14]
mov eax, dword [edx - 8]
sub eax, esi
push eax
push esi
lea ecx, [esp + 0x1c]
call fcn.004490eb
lea ecx, [esp + 0x10]
call fcn.00449849
lea ecx, [esp + 0x10]
call fcn.004497fd
mov esi, dword [esp + 0x40]
pop edi
lea eax, [esi + 3]
cmp eax, 3
ja case.default.0x4332f7
jmp dword [eax*4 + 0x433418]
mov eax, dword [esp + 0xc]
mov ecx, dword [eax - 8]
test ecx, ecx
je case.0x4332f7.2
xor ebp, ebp
mov dword [ebx + 0xf8], 0xa
jmp 0x433365
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx - 8]
test eax, eax
jne case.0x4332f7.2
xor ebp, ebp
mov dword [ebx + 0xf8], 0xa
jmp 0x433365
mov edx, dword [esp + 0xc]
mov eax, dword [edx - 8]
test eax, eax
jne case.0x4332f7.2
push 0x46ac50
lea ecx, [esp + 0x10]
call fcn.0044a511
mov ecx, dword [esp + 0x34]
lea edx, [esp + 0x10]
push edx
call fcn.0044a4c1
mov ecx, dword [esp + 0x40]
lea eax, [esp + 0xc]
push eax
call fcn.0044a4c1
lea ecx, [esp + 0x20]
mov byte [esp + 0x2c], 4
call fcn.0044a3d4
lea ecx, [esp + 0xc]
mov byte [esp + 0x2c], 3
call fcn.0044a3d4
lea ecx, [esp + 0x14]
mov byte [esp + 0x2c], 2
call fcn.0044a3d4
lea ecx, [esp + 0x18]
mov byte [esp + 0x2c], 1
call fcn.0044a3d4
lea ecx, [esp + 0x10]
mov byte [esp + 0x2c], 0
call fcn.0044a3d4
lea ecx, [esp + 0x38]
mov dword [esp + 0x2c], 0xffffffff
call fcn.0044a3d4
mov ecx, dword [esp + 0x24]
mov eax, ebp
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x24
ret 0x10
mov eax, dword [esp + 0xc]
push eax
call fcn.0043a840
add esp, 4
cmp eax, esi
jg 0x433405
test eax, eax
jne case.0x4332f7.2
mov ecx, dword [esp + 0xc]
push 0x46c3cc
push ecx
call fcn.0043a540
add esp, 8
test eax, eax
jne case.0x4332f7.2
xor ebp, ebp
mov dword [ebx + 0xf8], 0xa
jmp 0x433365