Function at 0x405a60
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x5ad1af
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.0057d219
mov ecx, dword [esp + 0x30]
mov esi, eax
push ecx
mov edi, edx
call fcn.0057d219
mov ecx, dword [0x633828]
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.0x405ac4
jmp dword [ecx*4 + 0x405d30]
cmp esi, eax
jne 0x405c7f
cmp edi, edx
jne 0x405c7f
mov eax, 1
jmp 0x405c81
cmp edi, edx
jl 0x405b0c
jg 0x405aef
cmp esi, eax
jbe 0x405b0c
mov eax, 1
push eax
lea eax, [esp + 0xc]
push 0x60c620
push eax
call fcn.0059584e
add esp, 0xc
jmp 0x405cd7
xor eax, eax
push eax
lea eax, [esp + 0xc]
push 0x60c620
push eax
call fcn.0059584e
add esp, 0xc
jmp 0x405cd7
cmp edi, edx
jg 0x405b38
jl 0x405c5a
cmp esi, eax
jb 0x405c5a
xor eax, eax
jmp 0x405c5f
cmp edi, edx
jl 0x405c7f
jg 0x405b51
cmp esi, eax
jb 0x405c7f
mov eax, 1
jmp 0x405c81
cmp edi, edx
jg 0x405b0c
jl 0x405b65
cmp esi, eax
ja 0x405b0c
mov eax, 1
jmp 0x405b0e
cmp esi, eax
jne 0x405c5a
cmp edi, edx
jne 0x405c5a
xor eax, eax
jmp 0x405c5f
add eax, esi
adc edx, edi
push edx
push eax
lea edx, [esp + 0x10]
push 0x60c620
push edx
call fcn.0059584e
add esp, 0x10
jmp 0x405cd7
sub esi, eax
lea eax, [esp + 8]
sbb edi, edx
push edi
push esi
push 0x60c620
push eax
call fcn.0059584e
add esp, 0x10
jmp 0x405cd7
push edi
push esi
push edx
push eax
call fcn.0057d500
push edx
push eax
jmp 0x405cb5
mov ecx, eax
or ecx, edx
je case.default.0x405ac4
push edx
push eax
push edi
push esi
call fcn.0057d450
push edx
push eax
lea edx, [esp + 0x10]
push 0x60c620
push edx
call fcn.0059584e
add esp, 0x10
jmp 0x405cd7
mov ecx, eax
or ecx, edx
je case.default.0x405ac4
push edx
push eax
push edi
push esi
call fcn.0057d390
push edx
push eax
lea edx, [esp + 0x10]
push 0x60c620
push edx
call fcn.0059584e
add esp, 0x10
jmp 0x405cd7
or esi, edi
je 0x405c34
or eax, edx
je 0x405c34
mov eax, 1
jmp 0x405c36
xor eax, eax
push eax
lea eax, [esp + 0xc]
push 0x60c620
push eax
call fcn.0059584e
add esp, 0xc
jmp 0x405cd7
or esi, edi
jne 0x405c5a
or eax, edx
jne 0x405c5a
xor eax, eax
jmp 0x405c5f
mov eax, 1
push eax
lea ecx, [esp + 0xc]
push 0x60c620
push ecx
call fcn.0059584e
add esp, 0xc
jmp 0x405cd7
or esi, edi
jne 0x405c7f
mov eax, 1
jmp 0x405c81
xor eax, eax
push eax
lea edx, [esp + 0xc]
push 0x60c620
push edx
call fcn.0059584e
add esp, 0xc
jmp 0x405cd7
neg esi
adc edi, 0
lea eax, [esp + 8]
neg edi
push edi
push esi
push 0x60c620
push eax
call fcn.0059584e
add esp, 0x10
jmp 0x405cd7
push edi
push esi
lea ecx, [esp + 0x10]
push 0x60c620
push ecx
call fcn.0059584e
add esp, 0x10
jmp 0x405cd7
push 0x60c58c
lea ecx, [esp + 0xc]
call fcn.005989e8
mov esi, dword [esp + 0x20]
lea edx, [esp + 8]
push edx
mov ecx, esi
call fcn.005985d4
mov dword [esp + 0xc], 1
lea ecx, [esp + 8]
mov byte [esp + 0x18], 2
call fcn.0059885f
lea ecx, [esp + 0x24]
mov byte [esp + 0x18], 1
call fcn.0059885f
lea ecx, [esp + 0x2c]
mov byte [esp + 0x18], 0
call fcn.0059885f
mov ecx, dword [esp + 0x10]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
add esp, 0x14
ret 0x10