Function at 0x4200a0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x4e95f0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xc
push ebx
push esi
mov esi, ecx
push edi
lea ecx, [esp + 0xc]
call fcn.004be970
push 0
push 0
push ecx
mov dword [esp + 0x2c], 0
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x50f634
call fcn.004bea10
push ecx
mov byte [esp + 0x30], 1
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x50fb6c
call fcn.004bea10
mov ecx, 0x520200
mov byte [esp + 0x30], 0
call fcn.004cb760
mov ecx, esi
call fcn.0041fe40
test ax, ax
jle 0x4202d4
mov al, byte [esp + 0x28]
lea ecx, [esp + 0xc]
push 0xfe
push ecx
push 0x50fdd0
mov ecx, esi
mov byte [0x50fdd7], al
call fcn.00419700
test ax, ax
jg 0x42016f
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
push 6
push 0x50f634
call fcn.004bea10
push ecx
mov byte [esp + 0x30], 2
mov ecx, esp
mov dword [esp + 0x3c], esp
push 6
push 0x50f9c0
jmp 0x4202c0
xor edi, edi
lea edx, [esp + 0xc]
push 0xfe
push edx
push 0x50fdc8
mov ecx, esi
call fcn.00419700
test ax, ax
jle 0x4201ce
lea ecx, [esp + 0xc]
call fcn.004bee30
cmp ax, 7
jg 0x4201a1
inc edi
cmp edi, 0xf
jl 0x420171
cmp edi, 0xf
jne 0x4201fd
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
push 6
push 0x50f634
call fcn.004bea10
push ecx
mov byte [esp + 0x30], 4
mov ecx, esp
mov dword [esp + 0x3c], esp
jmp 0x4202b9
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
push 6
push 0x50f634
call fcn.004bea10
push ecx
mov byte [esp + 0x30], 3
mov ecx, esp
mov dword [esp + 0x3c], esp
push 6
push 0x50f9c0
jmp 0x4202c0
mov ax, word [esp + 0x2c]
push 0x50fde8
mov bx, ax
push 0x50fddc
sar bx, 8
mov ecx, esi
mov byte [0x50fde3], bl
mov byte [0x50fde9], al
call fcn.0041b860
test ax, ax
jg 0x420252
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
push 6
push 0x50f634
call fcn.004bea10
push ecx
mov byte [esp + 0x30], 5
mov ecx, esp
mov dword [esp + 0x3c], esp
jmp 0x42031f
xor edi, edi
lea eax, [esp + 0xc]
push 0xfe
push eax
push 0x50fdc8
mov ecx, esi
call fcn.00419700
test ax, ax
jle 0x4202fc
lea ecx, [esp + 0xc]
call fcn.004bee30
cmp ax, 7
jle 0x420287
cmp edi, 5
jg 0x42028d
inc edi
cmp edi, 0xf
jl 0x420254
cmp edi, 0xf
jne 0x420362
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
push 6
push 0x50f634
call fcn.004bea10
push ecx
mov byte [esp + 0x30], 7
mov ecx, esp
mov dword [esp + 0x3c], esp
push 6
push 0x510150
call fcn.004bea10
mov ecx, 0x520200
mov byte [esp + 0x30], 0
call fcn.004cb760
lea ecx, [esp + 0xc]
mov dword [esp + 0x20], 0xffffffff
call fcn.004beab0
xor ax, ax
mov ecx, dword [esp + 0x18]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
add esp, 0x18
ret 8
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
push 6
push 0x50f634
call fcn.004bea10
push ecx
mov byte [esp + 0x30], 6
mov ecx, esp
mov dword [esp + 0x3c], esp
push 6
push 0x50f9c0
call fcn.004bea10
mov ecx, 0x520200
mov byte [esp + 0x30], 0
call fcn.004cb760
lea ecx, [esp + 0xc]
mov dword [esp + 0x20], 0xffffffff
call fcn.004beab0
xor ax, ax
mov ecx, dword [esp + 0x18]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
add esp, 0x18
ret 8
mov cl, byte [esp + 0x2c]
push 0x50fdf8
mov byte [0x50fdf9], cl
push 0x50fdec
mov ecx, esi
mov byte [0x50fdf3], bl
call fcn.0041b860
lea edx, [esp + 0xc]
push 0xfe
push edx
push 0x50fe1c
mov ecx, esi
call fcn.00419700
lea ecx, [esp + 0xc]
mov dword [esp + 0x20], 0xffffffff
call fcn.004beab0
mov ecx, dword [esp + 0x18]
pop edi
pop esi
mov ax, 1
mov dword fs:[0], ecx
pop ebx
add esp, 0x18
ret 8