Function at 0x7552e0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
mov ecx, 9
push 0
push 0
dec ecx
jne 0x7552e8
push ecx
push ebx
push esi
push edi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.004099a8
xor eax, eax
push ebp
push 0x755701
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x753388]
call fcn.00407aec
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0xc]
mov edx, dword [ebp - 0x10]
test edx, edx
je 0x755328
sub edx, 0xfffffff8
call fcn.0040d6f8
mov eax, dword [ebp + 8]
mov eax, dword [eax - 8]
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x10], eax
mov eax, dword [ebp - 0x10]
add eax, 0x14
mov edx, dword [ebp + 8]
mov edx, dword [edx - 8]
test edx, edx
je 0x75534c
sub edx, 0xfffffff8
call fcn.0040d6f8
mov eax, dword [ebp - 0x10]
add eax, 0xc
mov edx, dword [ebp - 4]
call fcn.00409ca4
xor ecx, ecx
push ebp
push 0x7556c1
push dword fs:[ecx]
mov dword fs:[ecx], esp
push dword [0x804e28]
push dword [0x7ae9b4]
mov eax, dword [ebp - 0x10]
push dword [eax + 0xc]
push 0x75571c
lea eax, [ebp - 0x2c]
mov edx, 4
call fcn.0040a820
mov eax, dword [ebp - 0x2c]
mov dl, 1
call fcn.0042238c
test al, al
jne 0x7553a9
call fcn.00409030
jmp 0x7556c8
mov eax, dword [ebp + 8]
cmp byte [eax - 9], 0
jne 0x755624
cmp dword [0x7ae990], 0
jne 0x755624
xor eax, eax
push ebp
push 0x755417
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
push dword [0x804e28]
push dword [0x7ae9b4]
mov eax, dword [ebp - 0x10]
push dword [eax + 0xc]
push 0x75571c
lea eax, [ebp - 0x30]
mov edx, 4
call fcn.0040a820
mov eax, dword [ebp - 0x30]
lea edx, [ebp - 8]
xor ecx, ecx
call fcn.00637d7c
mov edx, dword [ebp + 8]
mov edx, dword [edx - 8]
mov byte [edx + 0x30], al
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x75542b
mov eax, dword [ebp + 8]
mov eax, dword [eax - 8]
cmp byte [eax + 0x30], 0
jne 0x75544f
mov eax, dword [ebp + 8]
mov eax, dword [eax - 8]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x10]
test edx, edx
je 0x75544a
sub edx, 0xffffffe0
call fcn.004a50cc
mov eax, dword [0x7af8ec]
mov edx, dword [eax + 4]
mov eax, dword [eax]
mov ecx, dword [0x7aebb0]
cmp edx, dword [ecx + 4]
jne 0x75546e
cmp eax, dword [ecx]
jb 0x755624
jmp 0x755474
jl 0x755624
mov eax, dword [ebp + 8]
mov eax, dword [eax - 8]
cmp byte [eax + 0x3c], 0
je 0x7554a5
push 0x755734
mov eax, dword [ebp - 0x10]
push dword [eax + 0xc]
push 0x75571c
lea eax, [ebp - 0x34]
mov edx, 3
call fcn.0040a820
mov eax, dword [ebp - 0x34]
call fcn.0074b09c
push 0x755734
mov eax, dword [ebp - 0x10]
push dword [eax + 0xc]
push 0x755758
mov eax, dword [ebp + 8]
mov eax, dword [eax - 8]
mov eax, dword [eax + 0x40]
add eax, 0x28
mov edx, 3
call fcn.0040a820
mov eax, dword [ebp + 8]
mov eax, dword [eax - 8]
mov edx, dword [eax + 0x40]
mov eax, edx
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x18], 0x7518e8
push dword [ebp - 0x14]
push dword [ebp - 0x18]
call fcn.004a5050
push dword [0x804e28]
push dword [0x7ae9b4]
mov eax, dword [ebp - 0x10]
push dword [eax + 0xc]
push 0x75571c
lea eax, [ebp - 0x38]
mov edx, 4
call fcn.0040a820
mov eax, dword [ebp - 0x38]
call fcn.0074de80
mov dword [0x804e60], eax
mov dword [0x804e64], edx
xor ecx, ecx
push ebp
push 0x7555e2
push dword fs:[ecx]
mov dword fs:[ecx], esp
mov eax, dword [ebp + 8]
push eax
push dword [0x804e28]
push dword [0x7ae9b4]
mov eax, dword [ebp - 0x10]
push dword [eax + 0xc]
push 0x75571c
lea eax, [ebp - 0x3c]
mov edx, 4
call fcn.0040a820
mov eax, dword [ebp - 0x3c]
call fcn.00754af8
pop ecx
test al, al
je 0x7555b8
push dword [0x804e28]
push dword [0x7ae9b4]
mov eax, dword [ebp - 0x10]
push dword [eax + 0xc]
push 0x75571c
lea eax, [ebp - 0x40]
mov edx, 4
call fcn.0040a820
mov eax, dword [ebp - 0x40]
call fcn.0074de80
mov dword [0x804e68], eax
mov dword [0x804e6c], edx
mov eax, dword [ebp + 8]
mov eax, dword [eax - 8]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x10]
test edx, edx
je 0x7555b1
sub edx, 0xffffffe4
call fcn.004a50cc
jmp 0x7555d8
mov eax, dword [ebp + 8]
mov eax, dword [eax - 8]
mov edx, dword [eax + 0x40]
mov eax, edx
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x20], 0x75187c
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
call fcn.004a5050
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x75560c
mov eax, dword [ebp + 8]
mov eax, dword [eax - 8]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x10]
test edx, edx
je 0x75561f
sub edx, 0xffffffe8
call fcn.004a50cc
push dword [0x804e28]
push dword [0x7ae9b4]
mov eax, dword [ebp - 0x10]
push dword [eax + 0xc]
push 0x755774
lea eax, [ebp - 0x44]
mov edx, 4
call fcn.0040a820
mov eax, dword [ebp - 0x44]
mov dl, 1
call fcn.0042238c
test al, al
je 0x755682
push dword [0x804e28]
push dword [0x7ae9b4]
mov eax, dword [ebp - 0x10]
push dword [eax + 0xc]
push 0x755774
lea eax, [ebp - 0x48]
mov edx, 4
call fcn.0040a820
mov eax, dword [ebp - 0x48]
call fcn.00422814
mov eax, dword [ebp + 8]
mov eax, dword [eax - 8]
cmp byte [eax + 0x3c], 0
je 0x7556b3
push 0x755798
mov eax, dword [ebp - 0x10]
push dword [eax + 0xc]
push 0x75571c
lea eax, [ebp - 0x4c]
mov edx, 3
call fcn.0040a820
mov eax, dword [ebp - 0x4c]
call fcn.0074b09c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x7556c8
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x755708
lea eax, [ebp - 0x4c]
mov edx, 9
call fcn.00409924
lea eax, [ebp - 0xc]
call fcn.0040d6e0
lea eax, [ebp - 8]
mov edx, dword [0x634f70]
call fcn.0040bf84
lea eax, [ebp - 4]
call fcn.004098c4
ret