Function at 0x1002e210
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
push 0xffffffffffffffff
push 0x1015901f
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x38
mov al, byte [0x1018c50d]
push ebx
xor ebx, ebx
inc al
mov byte [0x1018c50d], al
imul byte [0x1018c512]
mov dl, byte [0x1018c513]
push esi
mov esi, ecx
add al, 0x30
mov cl, byte [0x1018c511]
mov dword [esp + 0x3c], ebx
push ecx
mov cl, byte [0x1018c510]
push edx
push 0x24
push eax
mov al, byte [0x1018c50c]
push eax
push ecx
call fcn.1002e4c0
add esp, 0x10
push eax
push 0x36
call fcn.1002e4c0
add esp, 0x10
lea ecx, [esp + 8]
mov byte [0x1018c513], al
push 3
call fcn.100595a0
mov al, byte [0x1018c513]
mov cl, al
inc al
mov byte [0x1018c513], al
mov al, byte [0x1018c50d]
mov dl, al
add dl, 0x28
push edx
push 0xffffffffffffffc8
push eax
push ecx
call fcn.1002e4c0
mov eax, dword [esp + 0x64]
lea ecx, [esp + 0x3c]
push eax
push ecx
call fcn.100213f0
add esp, 0x18
lea edx, [esp + 0x1c]
push eax
push edx
lea ecx, [esp + 0x10]
mov dword [esp + 0x50], 1
call fcn.10055230
push 1
lea ecx, [esp + 0x30]
mov byte [esp + 0x4c], 3
call fcn.1000ba10
mov eax, 0xe3
cdq
idiv dword [0x1018c4e8]
mov eax, dword [0x1018c4e4]
mov cl, byte [edx + eax]
mov dl, byte [esp + 0x50]
sub cl, 0x18
mov byte [esp + 0xc], dl
mov byte [0x1018c50e], cl
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebx
mov al, byte [0x1018c50d]
mov byte [esp + 0x48], 4
mov byte [0x1018c50c], al
dec al
mov byte [0x1018c50d], al
lea eax, [esp + 0xc]
push eax
lea ecx, [esp + 0x20]
push ecx
lea ecx, [esi + 0x30]
call fcn.10050e60
test al, al
jne 0x1002e41a
mov dl, byte [esp + 0x50]
push edi
mov edi, dword [esp + 0x54]
push ebx
mov ecx, edi
mov byte [edi], dl
call fcn.1000bc70
push 0x101913e8
call fcn.1013c2c2
add esp, 4
mov esi, eax
mov ecx, edi
push 1
push esi
call fcn.1000c010
test al, al
je 0x1002e392
mov eax, dword [edi + 4]
push esi
push 0x101913e8
push eax
call fcn.100017d0
mov eax, dword [edi + 4]
mov dword [edi + 8], esi
add esp, 0xc
mov word [eax + esi*2], bx
lea eax, [eax + esi*2]
mov dword [esp + 0x40], 1
mov eax, dword [esp + 0x14]
mov byte [esp + 0x4c], 3
cmp eax, ebx
je 0x1002e3c4
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x1002e3bb
cmp al, 0xff
je 0x1002e3bb
dec al
mov byte [ecx], al
jmp 0x1002e3c4
push ecx
call fcn.101307a0
add esp, 4
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
cmp ecx, ebx
mov byte [esp + 0x4c], bl
je 0x1002e3f8
mov al, byte [ecx - 1]
cmp al, bl
je 0x1002e3ee
cmp al, 0xff
je 0x1002e3ee
dec al
mov byte [ecx - 1], al
jmp 0x1002e3f8
dec ecx
push ecx
call fcn.101307a0
add esp, 4
mov eax, edi
pop edi
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
pop esi
pop ebx
mov ecx, dword [esp + 0x38]
mov dword fs:[0], ecx
add esp, 0x44
ret 8
mov esi, dword [esp + 0x50]
lea ecx, [esp + 0xc]
push ecx
push esi
call fcn.100218a0
mov eax, dword [esp + 0x18]
add esp, 8
cmp eax, ebx
mov dword [esp + 0x3c], 1
mov byte [esp + 0x48], 3
je 0x1002e45e
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x1002e455
cmp al, 0xff
je 0x1002e455
dec al
mov byte [ecx], al
jmp 0x1002e45e
push ecx
call fcn.101307a0
add esp, 4
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebx
cmp ecx, ebx
mov byte [esp + 0x48], bl
je 0x1002e492
mov al, byte [ecx - 1]
cmp al, bl
je 0x1002e488
cmp al, 0xff
je 0x1002e488
dec al
mov byte [ecx - 1], al
jmp 0x1002e492
dec ecx
push ecx
call fcn.101307a0
add esp, 4
mov ecx, dword [esp + 0x40]
mov eax, esi
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x44
ret 8