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

Disassembly:
push 0xffffffffffffffff
push 0x4a4979
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2c
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov dword [esp + 0x24], esi
xor edi, edi
lea ebp, [esi + 4]
mov ecx, 0x7fff
mov dword [esi], edi
mov eax, 0xffff8001
mov word [ebp], cx
mov word [ebp + 2], cx
mov dword [esp + 0x44], edi
mov word [ebp + 4], ax
mov word [ebp + 6], ax
mov edx, dword [esp + 0x4c]
mov dword [esi + 0xc], edx
mov word [esi + 0x16], di
mov dword [esi + 0x18], edi
mov word [esp + 0x2c], cx
mov word [esp + 0x2e], cx
mov word [esp + 0x30], ax
mov word [esp + 0x32], ax
mov ax, word [esp + 0x54]
mov dword [esp + 0x10], edx
movsx ebx, ax
mov word [esi + 0x14], ax
mov byte [esp + 0x44], 5
lea eax, [ebx + 3]
cdq
and edx, 3
add eax, edx
sar eax, 2
push eax
call fcn.00442a90
mov edi, eax
add esp, 4
movsx eax, word [esi + 0x14]
add eax, 3
mov dword [esi + 0x10], edi
cdq
and edx, 3
add eax, edx
mov ecx, eax
xor eax, eax
sar ecx, 2
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov ecx, dword [esp + 0x50]
xor edi, edi
cmp word [esp + 0x54], di
mov al, byte [ebx + ecx - 1]
mov byte [esp + 0x1c], al
mov byte [esp + 0x50], al
jle 0x42c439
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x34]
push eax
push eax
call fcn.004383d0
mov ecx, dword [eax]
mov dword [esp + 0x2c], ecx
mov edx, dword [eax + 4]
lea eax, [esp + 0x2c]
mov dword [esp + 0x30], edx
push eax
push ebp
call fcn.004384f0
mov ecx, dword [esp + 0x1c]
add esp, 8
mov bl, byte [ecx]
mov ecx, esi
mov dl, bl
mov byte [esp + 0x20], bl
sar dl, 5
push edx
push edi
call fcn.0042c620
movsx ax, byte [esp + 0x50]
movsx bx, bl
sub ebx, eax
cmp bx, 0x40
jle 0x42c33b
sub ebx, 0x80
jmp 0x42c347
cmp bx, 0xffc0
jge 0x42c347
add ebx, 0x80
lea ecx, [esp + 0x28]
push edi
push ecx
mov ecx, esi
call fcn.00427a00
mov dx, word [eax]
mov ax, word [eax + 2]
add word [esp + 0x10], dx
add word [esp + 0x12], ax
cmp bl, 0x40
je 0x42c36f
cmp bl, 0xc0
jne 0x42c3e0
test di, di
jle 0x42c3e0
sub edi, 2
test di, di
jl 0x42c3d4
movsx eax, di
mov ecx, eax
and ecx, 0x80000003
jns 0x42c38e
dec ecx
or ecx, 0xfffffffc
inc ecx
cdq
and edx, 3
add eax, edx
mov edx, dword [esi + 0x10]
sar eax, 2
shl cl, 1
mov al, byte [eax + edx]
shr al, cl
xor cx, cx
and al, 3
mov cl, al
shl ecx, 5
movsx eax, cx
and eax, 0x8000007f
jns 0x42c3ba
dec eax
or eax, 0xffffff80
inc eax
test ax, ax
jge 0x42c3c4
add eax, 0x80
mov byte [esp + 0x54], al
lea eax, [esp + 0x54]
mov dl, byte [eax]
mov byte [esp + 0x50], dl
jmp 0x42c3e8
lea eax, [esp + 0x1c]
mov dl, byte [eax]
mov byte [esp + 0x50], dl
jmp 0x42c3e8
mov al, byte [esp + 0x20]
mov byte [esp + 0x50], al
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
inc edi
inc ecx
dec eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
jne 0x42c2df
mov cx, word [esp + 0x10]
cmp cx, word [esp + 0x4c]
jne 0x42c419
mov dx, word [esp + 0x12]
cmp dx, word [esp + 0x4e]
je 0x42c439
push 0x69
push 0x4b7228
push 0x4b1640
push 0
push 0x4b71f0
push 0x4cb2ec
call fcn.00441210
add esp, 0x18
lea eax, [edi - 1]
mov dword [esp + 0x14], eax
mov ebp, dword [esi + 0x10]
xor dx, dx
mov cl, byte [ebp]
and cl, 3
mov dl, cl
shl edx, 5
movsx ebx, dx
and ebx, 0x8000007f
jns 0x42c461
dec ebx
or ebx, 0xffffff80
inc ebx
test bx, bx
jge 0x42c46c
add ebx, 0x80
movsx eax, word [esp + 0x14]
mov ecx, eax
and ecx, 0x80000003
jns 0x42c480
dec ecx
or ecx, 0xfffffffc
inc ecx
cdq
and edx, 3
add eax, edx
sar eax, 2
shl cl, 1
mov al, byte [eax + ebp]
shr al, cl
xor cx, cx
and al, 3
mov cl, al
shl ecx, 5
movsx eax, cx
and eax, 0x8000007f
jns 0x42c4a9
dec eax
or eax, 0xffffff80
inc eax
test ax, ax
jge 0x42c4b3
add eax, 0x80
movsx ax, al
movsx dx, bl
sub eax, edx
cmp ax, 0x40
mov dword [esp + 0x50], eax
jle 0x42c4ce
sub eax, 0x80
jmp 0x42c4d9
cmp ax, 0xffc0
jge 0x42c4dd
add eax, 0x80
mov dword [esp + 0x50], eax
cmp al, 0x40
je 0x42c4e9
cmp al, 0xc0
jne 0x42c5c9
lea eax, [esp + 0x28]
push 0
push eax
mov ecx, esi
call fcn.00427a00
mov cx, word [eax]
sub edi, 2
add word [esi + 0xc], cx
mov dx, word [eax + 2]
add word [esi + 0xe], dx
mov edx, dword [esp + 0x14]
movsx eax, di
sub edx, 2
xor ebp, ebp
test eax, eax
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], edx
jle 0x42c5c5
lea eax, [ebp + 1]
mov edi, dword [esi + 0x10]
movsx ecx, ax
mov eax, ecx
cdq
and edx, 3
add eax, edx
sar eax, 2
and ecx, 0x80000003
jns 0x42c546
dec ecx
or ecx, 0xfffffffc
inc ecx
mov al, byte [eax + edi]
shl cl, 1
shr al, cl
xor cx, cx
and al, 3
mov cl, al
shl ecx, 5
movsx ebx, cx
and ebx, 0x8000007f
jns 0x42c567
dec ebx
or ebx, 0xffffff80
inc ebx
test bx, bx
jge 0x42c572
add ebx, 0x80
movsx eax, bp
mov edi, eax
and edi, 0x80000003
jns 0x42c584
dec edi
or edi, 0xfffffffc
inc edi
shl edi, 1
mov dl, 3
mov ecx, edi
shl dl, cl
sar bl, 5
shl bl, cl
mov byte [esp + 0x54], dl
cdq
and edx, 3
add edx, eax
mov eax, dword [esi + 0x10]
sar edx, 2
add edx, eax
mov al, byte [esp + 0x54]
and bl, al
mov cl, byte [edx]
not al
and al, cl
or bl, al
inc ebp
movsx eax, word [esp + 0x18]
cmp ebp, eax
mov byte [edx], bl
jl 0x42c525
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x50]
cmp di, 1
jle 0x42c5df
cmp al, 0x40
je 0x42c440
cmp al, 0xc0
je 0x42c440
cmp di, 4
mov word [esi + 0x14], di
jge 0x42c609
push 0x75
push 0x4b7228
push 0x4b1640
push 0
push 0x4b71e0
push 0x4cb2ec
call fcn.00441210
add esp, 0x18
mov ecx, dword [esp + 0x3c]
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x38
ret 0xc