Function at 0x100154c0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x230
mov eax, dword [0x1004b080]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
cmp dword [ebp + 8], 0
jne 0x100154e1
jmp 0x10015762
mov dword [ebp - 0x208], 0
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x20c], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x22c], 0
mov dword [ebp - 0x21c], 0
mov dword [ebp - 0x210], 0
pushal
mov eax, dword fs:[0x30]
mov dword [ebp - 0x208], eax
popal
mov eax, dword [ebp - 0x208]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x228], ecx
jmp 0x1001555f
mov edx, dword [ebp - 0x21c]
add edx, 1
mov dword [ebp - 0x21c], edx
cmp dword [ebp - 0x21c], 3
jge 0x10015730
mov eax, dword [ebp - 0x21c]
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0
je 0x10015595
cmp dword [ebp - 0x224], 1
je 0x100155bc
cmp dword [ebp - 0x224], 2
je 0x100155e3
jmp 0x10015608
mov ecx, dword [ebp - 0x228]
add ecx, 0xc
mov dword [ebp - 0x20c], ecx
mov edx, dword [ebp - 0x20c]
mov dword [ebp - 0x220], edx
mov dword [ebp - 0x218], 0
jmp 0x10015608
mov eax, dword [ebp - 0x228]
add eax, 0x14
mov dword [ebp - 0x20c], eax
mov ecx, dword [ebp - 0x20c]
mov dword [ebp - 0x220], ecx
mov dword [ebp - 0x218], 8
jmp 0x10015608
mov edx, dword [ebp - 0x228]
add edx, 0x1c
mov dword [ebp - 0x20c], edx
mov eax, dword [ebp - 0x20c]
mov dword [ebp - 0x220], eax
mov dword [ebp - 0x218], 0x10
mov ecx, dword [ebp - 0x20c]
mov edx, dword [ecx]
cmp edx, dword [ebp - 0x220]
je 0x1001572b
mov eax, dword [ebp - 0x20c]
mov ecx, dword [eax]
mov dword [ebp - 0x20c], ecx
mov edx, 0x24
sub edx, dword [ebp - 0x218]
add edx, dword [ebp - 0x20c]
mov dword [ebp - 0x22c], edx
mov dword [ebp - 0x210], 0
jmp 0x1001565c
mov eax, dword [ebp - 0x210]
add eax, 1
mov dword [ebp - 0x210], eax
mov ecx, dword [ebp - 0x22c]
movzx eax, word [ecx]
cdq
sub eax, edx
sar eax, 1
cmp dword [ebp - 0x210], eax
jge 0x1001569f
cmp dword [ebp - 0x210], 0x200
jge 0x1001569f
mov edx, dword [ebp - 0x22c]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x210]
mov edx, dword [ebp - 0x210]
mov al, byte [eax + edx*2]
mov byte [ebp + ecx - 0x204], al
jmp 0x1001564d
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x230], ecx
cmp dword [ebp - 0x230], 0x200
jae 0x100156b9
jmp 0x100156bf
call fcn.10019f52
nop
mov edx, dword [ebp - 0x230]
mov byte [ebp + edx - 0x204], 0
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x204]
push ecx
call fcn.100152a0
add esp, 8
test eax, eax
je 0x10015726
cmp dword [ebp - 0x214], 0
jne 0x100156ff
mov edx, dword [ebp - 0x20c]
sub edx, dword [ebp - 0x218]
mov dword [ebp - 0x214], edx
mov eax, dword [ebp - 0x20c]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x20c]
mov eax, dword [edx]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x20c]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x20c]
mov ecx, dword [eax + 4]
mov dword [edx + 4], ecx
jmp 0x10015608
jmp 0x10015550
cmp dword [ebp - 0x214], 0
je 0x10015762
mov edx, dword [ebp - 0x214]
mov eax, dword [edx + 0x40]
mov ecx, dword [ebp - 0x214]
mov edx, dword [ecx + 0x3c]
mov dword [eax], edx
mov eax, dword [ebp - 0x214]
mov ecx, dword [eax + 0x3c]
mov edx, dword [ebp - 0x214]
mov eax, dword [edx + 0x40]
mov dword [ecx + 4], eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100198a3
mov esp, ebp
pop ebp
ret