Function at 0x5d07c8
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x8014
push 0
push 0
dec ecx
jne 0x5d07d0
push ebx
push esi
push edi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.00404fa4
xor eax, eax
push ebp
push 0x5d1086
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
mov ecx, dword [ebp - 4]
mov dl, 1
mov eax, dword [0x41aa18]
call fcn.00420ab8
mov dword [ebp - 0x20], eax
xor ecx, ecx
xor edx, edx
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0x14]
mov eax, dword [0x669b48]
mov eax, dword [eax]
call fcn.00498e74
mov eax, dword [0x669aa4]
mov dl, byte [0xacd48e]
mov byte [eax + 7], dl
call fcn.005bc6ec
mov edx, dword [0x669aa4]
mov byte [edx + 8], al
mov eax, dword [0x669210]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x1c], al
mov eax, dword [0x6692b0]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x1d], al
mov eax, dword [0x669fd0]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x1e], al
mov eax, dword [0x669210]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x30], al
mov eax, dword [0x6692b0]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x31], al
mov eax, dword [0x669fd0]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x32], al
mov eax, dword [0x669210]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x44], al
mov eax, dword [0x6692b0]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x45], al
mov eax, dword [0x669fd0]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x46], al
mov eax, dword [0x669210]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x58], al
mov eax, dword [0x6692b0]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x59], al
mov eax, dword [0x669fd0]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x5a], al
xor eax, eax
push ebp
push 0x5d1035
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0x14]
mov ecx, 1
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0xc]
cmp dword [ebp - 0x14], 0xb2
je 0x5d0938
mov ecx, 0x5d10a0
mov dl, 1
mov eax, dword [0x5bb5c8]
call fcn.0040eebc
call fcn.00404460
lea edx, [ebp - 0x40024]
mov ecx, 4
mov eax, dword [ebp - 0x20]
call fcn.00420704
lea ecx, [ebp - 0x40040]
xor eax, eax
mov al, byte [ebp - 0x40024]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40040]
lea ecx, [ebp - 0x40044]
xor eax, eax
mov al, byte [ebp - 0x40023]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40044]
lea ecx, [ebp - 0x40048]
xor eax, eax
mov al, byte [ebp - 0x40022]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40048]
lea ecx, [ebp - 0x4004c]
xor eax, eax
mov al, byte [ebp - 0x40021]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x4004c]
lea eax, [ebp - 0x4003c]
mov edx, 4
call fcn.00404e74
mov eax, dword [ebp - 0x4003c]
call fcn.0049b69c
mov dword [ebp - 0x10], eax
mov cx, 1
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0x14]
mov eax, dword [ebp - 0x20]
call fcn.004204a8
mov dword [ebp - 0xc], eax
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x5d10c4
call fcn.0052fa8c
jmp 0x5d0f8d
lea edx, [ebp - 0x40024]
mov ecx, 1
mov eax, dword [ebp - 0x20]
call fcn.00420704
cmp byte [ebp - 0x40024], 0x54
je 0x5d0a4c
cmp byte [ebp - 0x40024], 0x5d
je 0x5d0a4c
mov ecx, 0x5d10e0
mov dl, 1
mov eax, dword [0x5bb5c8]
call fcn.0040eebc
call fcn.00404460
mov al, byte [ebp - 0x40024]
sub al, 0x54
je 0x5d0a63
sub al, 9
je 0x5d0cd3
jmp 0x5d0f8d
lea edx, [ebp - 0x40024]
mov ecx, 3
mov eax, dword [ebp - 0x20]
call fcn.00420704
mov al, byte [ebp - 0x40023]
sub al, 0x17
je 0x5d0a8d
sub al, 0x17
je 0x5d0b4e
jmp 0x5d0c0f
xor ecx, ecx
mov cl, byte [ebp - 0x40022]
inc ecx
lea edx, [ebp - 0x40024]
mov eax, dword [ebp - 0x20]
call fcn.00420704
lea ecx, [ebp - 0x40054]
xor eax, eax
mov al, byte [ebp - 0x4001e]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40054]
lea ecx, [ebp - 0x40058]
xor eax, eax
mov al, byte [ebp - 0x4001d]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40058]
lea ecx, [ebp - 0x4005c]
xor eax, eax
mov al, byte [ebp - 0x4001c]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x4005c]
lea ecx, [ebp - 0x40060]
xor eax, eax
mov al, byte [ebp - 0x4001b]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40060]
lea eax, [ebp - 0x40050]
mov edx, 4
call fcn.00404e74
mov eax, dword [ebp - 0x40050]
call fcn.0049b69c
mov dword [ebp - 0x10], eax
mov cx, 1
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0x14]
jmp 0x5d0f8d
xor ecx, ecx
mov cl, byte [ebp - 0x40022]
inc ecx
lea edx, [ebp - 0x40024]
mov eax, dword [ebp - 0x20]
call fcn.00420704
lea ecx, [ebp - 0x40068]
xor eax, eax
mov al, byte [ebp - 0x40013]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40068]
lea ecx, [ebp - 0x4006c]
xor eax, eax
mov al, byte [ebp - 0x40012]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x4006c]
lea ecx, [ebp - 0x40070]
xor eax, eax
mov al, byte [ebp - 0x40011]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40070]
lea ecx, [ebp - 0x40074]
xor eax, eax
mov al, byte [ebp - 0x40010]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40074]
lea eax, [ebp - 0x40064]
mov edx, 4
call fcn.00404e74
mov eax, dword [ebp - 0x40064]
call fcn.0049b69c
mov dword [ebp - 0x10], eax
mov cx, 1
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0x14]
jmp 0x5d0f8d
xor ecx, ecx
mov cl, byte [ebp - 0x40022]
inc ecx
lea edx, [ebp - 0x40024]
mov eax, dword [ebp - 0x20]
call fcn.00420704
lea ecx, [ebp - 0x4007c]
xor eax, eax
mov al, byte [ebp - 0x4001e]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x4007c]
lea ecx, [ebp - 0x40080]
xor eax, eax
mov al, byte [ebp - 0x4001d]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40080]
lea ecx, [ebp - 0x40084]
xor eax, eax
mov al, byte [ebp - 0x4001c]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40084]
lea ecx, [ebp - 0x40088]
xor eax, eax
mov al, byte [ebp - 0x4001b]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40088]
lea eax, [ebp - 0x40078]
mov edx, 4
call fcn.00404e74
mov eax, dword [ebp - 0x40078]
call fcn.0049b69c
mov dword [ebp - 0x10], eax
mov cx, 1
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0x14]
inc dword [ebp - 0x18]
jmp 0x5d0f8d
lea edx, [ebp - 0x40024]
mov ecx, 3
mov eax, dword [ebp - 0x20]
call fcn.00420704
xor ecx, ecx
mov cl, byte [ebp - 0x40022]
inc ecx
lea edx, [ebp - 0x40024]
mov eax, dword [ebp - 0x20]
call fcn.00420704
lea ecx, [ebp - 0x40090]
xor eax, eax
mov al, byte [ebp - 0x3ffff]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40090]
lea ecx, [ebp - 0x40094]
xor eax, eax
mov al, byte [ebp - 0x3fffe]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40094]
lea ecx, [ebp - 0x40098]
xor eax, eax
mov al, byte [ebp - 0x3fffd]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x40098]
lea ecx, [ebp - 0x4009c]
xor eax, eax
mov al, byte [ebp - 0x3fffc]
mov edx, 2
call fcn.0040a604
push dword [ebp - 0x4009c]
lea eax, [ebp - 0x4008c]
mov edx, 4
call fcn.00404e74
mov eax, dword [ebp - 0x4008c]
call fcn.0049b69c
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
xor eax, eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov al, byte [eax + 0xacd4bd]
mov edx, dword [ebp - 0x14]
cmp al, byte [ebp + edx - 0x40024]
jne 0x5d0db5
inc dword [ebp - 0x1c]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x10
jne 0x5d0d9d
cmp dword [ebp - 0x1c], 0x10
jge 0x5d0dd8
mov cx, 1
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0x14]
jmp 0x5d0f8d
lea eax, [ebp - 0x24]
call fcn.00404ae4
mov dword [ebp - 0x14], 0x14
mov eax, dword [ebp - 0x14]
cmp byte [ebp + eax - 0x40024], 0
je 0x5d0e20
lea eax, [ebp - 0x400a0]
mov edx, dword [ebp - 0x14]
mov dl, byte [ebp + edx - 0x40024]
call fcn.00404ccc
mov edx, dword [ebp - 0x400a0]
lea eax, [ebp - 0x24]
call fcn.00404dbc
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x20
jne 0x5d0de7
mov eax, dword [ebp - 0x24]
mov edx, 0x5d1118
call fcn.00404f00
jne 0x5d0e76
lea edx, [ebp - 0x40024]
mov ecx, 0xd
mov eax, dword [ebp - 0x20]
call fcn.00420704
mov eax, dword [0x669af0]
mov dl, byte [ebp - 0x40018]
mov byte [eax], dl
mov eax, dword [0x669af0]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x47], al
mov edx, dword [ebp - 0x10]
sub edx, 0xd
mov cx, 1
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0x14]
jmp 0x5d0f8d
mov eax, dword [ebp - 0x24]
mov edx, 0x5d1128
call fcn.00404f00
jne 0x5d0ecc
lea edx, [ebp - 0x40024]
mov ecx, 0xd
mov eax, dword [ebp - 0x20]
call fcn.00420704
mov eax, dword [0x669af0]
mov dl, byte [ebp - 0x40018]
mov byte [eax], dl
mov eax, dword [0x669af0]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x1f], al
mov edx, dword [ebp - 0x10]
sub edx, 0xd
mov cx, 1
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0x14]
jmp 0x5d0f8d
mov eax, dword [ebp - 0x24]
mov edx, 0x5d1138
call fcn.00404f00
jne 0x5d0f1f
lea edx, [ebp - 0x40024]
mov ecx, 0xd
mov eax, dword [ebp - 0x20]
call fcn.00420704
mov eax, dword [0x669af0]
mov dl, byte [ebp - 0x40018]
mov byte [eax], dl
mov eax, dword [0x669af0]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x33], al
mov edx, dword [ebp - 0x10]
sub edx, 0xd
mov cx, 1
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0x14]
jmp 0x5d0f8d
mov eax, dword [ebp - 0x24]
mov edx, 0x5d1148
call fcn.00404f00
jne 0x5d0f72
lea edx, [ebp - 0x40024]
mov ecx, 0xd
mov eax, dword [ebp - 0x20]
call fcn.00420704
mov eax, dword [0x669af0]
mov dl, byte [ebp - 0x40018]
mov byte [eax], dl
mov eax, dword [0x669af0]
mov al, byte [eax]
mov edx, dword [0x669aa4]
mov byte [edx + 0x5b], al
mov edx, dword [ebp - 0x10]
sub edx, 0xd
mov cx, 1
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0x14]
jmp 0x5d0f8d
mov eax, dword [0x669b48]
mov eax, dword [eax]
call fcn.00498e74
mov cx, 1
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 0x14]
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
call dword [edx]
push edx
push eax
mov eax, dword [ebp - 0x20]
call fcn.004204a8
cmp edx, dword [esp + 4]
jne 0x5d0fb1
cmp eax, dword [esp]
pop edx
pop eax
jb 0x5d0a11
jmp 0x5d0fb9
pop edx
pop eax
jl 0x5d0a11
mov eax, dword [0x669aa4]
mov edx, 0x5c
call fcn.0064afcc
mov eax, 0xffff
call fcn.0064b010
mov eax, dword [0x66a180]
mov eax, dword [eax]
cmp byte [eax + 0xa], 0
je 0x5d0ff2
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x5d1158
call fcn.0052fa8c
jmp 0x5d1023
mov eax, dword [0x66a180]
mov eax, dword [eax]
cmp byte [eax + 0xb], 0xff
jne 0x5d1012
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x5d1198
call fcn.0052fa8c
jmp 0x5d1023
mov eax, dword [0x66a00c]
mov eax, dword [eax]
mov edx, 0x5d11b4
call fcn.0052fa8c
mov eax, dword [ebp - 0x20]
call fcn.00403c94
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5d1058
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5d108d
lea eax, [ebp - 0x400a0]
mov edx, 0x1a
call fcn.00404b08
lea eax, [ebp - 0x24]
call fcn.00404ae4
lea eax, [ebp - 4]
call fcn.00404ae4
ret