Function at 0x405a30
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x6021df
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 8
push esi
push edi
mov dword [esp + 0xc], 0
mov dword [esp + 0x18], 1
mov eax, dword [esp + 0x24]
push eax
call fcn.005ceaf9
mov ecx, dword [esp + 0x30]
mov esi, eax
push ecx
mov edi, edx
call fcn.005ceaf9
mov ecx, dword [0x69c108]
add esp, 8
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x28]
mov byte [esp + 0x18], 3
add ecx, 0xfffffffc
cmp ecx, 0xf
ja case.default.0x405a94
jmp dword [ecx*4 + 0x405d00]
cmp esi, eax
jne 0x405c4f
cmp edi, edx
jne 0x405c4f
mov eax, 1
jmp 0x405c51
cmp edi, edx
jl 0x405adc
jg 0x405abf
cmp esi, eax
jbe 0x405adc
mov eax, 1
push eax
lea eax, [esp + 0xc]
push 0x672660
push eax
call fcn.005e764e
add esp, 0xc
jmp 0x405ca7
xor eax, eax
push eax
lea eax, [esp + 0xc]
push 0x672660
push eax
call fcn.005e764e
add esp, 0xc
jmp 0x405ca7
cmp edi, edx
jg 0x405b08
jl 0x405c2a
cmp esi, eax
jb 0x405c2a
xor eax, eax
jmp 0x405c2f
cmp edi, edx
jl 0x405c4f
jg 0x405b21
cmp esi, eax
jb 0x405c4f
mov eax, 1
jmp 0x405c51
cmp edi, edx
jg 0x405adc
jl 0x405b35
cmp esi, eax
ja 0x405adc
mov eax, 1
jmp 0x405ade
cmp esi, eax
jne 0x405c2a
cmp edi, edx
jne 0x405c2a
xor eax, eax
jmp 0x405c2f
add eax, esi
adc edx, edi
push edx
push eax
lea edx, [esp + 0x10]
push 0x672660
push edx
call fcn.005e764e
add esp, 0x10
jmp 0x405ca7
sub esi, eax
lea eax, [esp + 8]
sbb edi, edx
push edi
push esi
push 0x672660
push eax
call fcn.005e764e
add esp, 0x10
jmp 0x405ca7
push edi
push esi
push edx
push eax
call fcn.005cede0
push edx
push eax
jmp 0x405c85
mov ecx, eax
or ecx, edx
je case.default.0x405a94
push edx
push eax
push edi
push esi
call fcn.005ced30
push edx
push eax
lea edx, [esp + 0x10]
push 0x672660
push edx
call fcn.005e764e
add esp, 0x10
jmp 0x405ca7
mov ecx, eax
or ecx, edx
je case.default.0x405a94
push edx
push eax
push edi
push esi
call fcn.005cec70
push edx
push eax
lea edx, [esp + 0x10]
push 0x672660
push edx
call fcn.005e764e
add esp, 0x10
jmp 0x405ca7
or esi, edi
je 0x405c04
or eax, edx
je 0x405c04
mov eax, 1
jmp 0x405c06
xor eax, eax
push eax
lea eax, [esp + 0xc]
push 0x672660
push eax
call fcn.005e764e
add esp, 0xc
jmp 0x405ca7
or esi, edi
jne 0x405c2a
or eax, edx
jne 0x405c2a
xor eax, eax
jmp 0x405c2f
mov eax, 1
push eax
lea ecx, [esp + 0xc]
push 0x672660
push ecx
call fcn.005e764e
add esp, 0xc
jmp 0x405ca7
or esi, edi
jne 0x405c4f
mov eax, 1
jmp 0x405c51
xor eax, eax
push eax
lea edx, [esp + 0xc]
push 0x672660
push edx
call fcn.005e764e
add esp, 0xc
jmp 0x405ca7
neg esi
adc edi, 0
lea eax, [esp + 8]
neg edi
push edi
push esi
push 0x672660
push eax
call fcn.005e764e
add esp, 0x10
jmp 0x405ca7
push edi
push esi
lea ecx, [esp + 0x10]
push 0x672660
push ecx
call fcn.005e764e
add esp, 0x10
jmp 0x405ca7
push 0x6725cc
lea ecx, [esp + 0xc]
call fcn.005eb27e
mov esi, dword [esp + 0x20]
lea edx, [esp + 8]
push edx
mov ecx, esi
call fcn.005eae6a
mov dword [esp + 0xc], 1
lea ecx, [esp + 8]
mov byte [esp + 0x18], 2
call fcn.005eb0f5
lea ecx, [esp + 0x24]
mov byte [esp + 0x18], 1
call fcn.005eb0f5
lea ecx, [esp + 0x2c]
mov byte [esp + 0x18], 0
call fcn.005eb0f5
mov ecx, dword [esp + 0x10]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
add esp, 0x14
ret 0x10