Function at 0x426180
Capabilities:
Access peb ldr_data

Disassembly:
sub esp, 0x30
mov eax, dword [0x4d36a4]
xor eax, esp
mov dword [esp + 0x2c], eax
push ebx
mov ebx, dword [esp + 0x38]
push ebp
mov ebp, dword [esp + 0x44]
push esi
mov ecx, dword [ebx]
mov eax, ecx
and eax, 0xfffbffff
push edi
mov edi, dword [esp + 0x48]
cmp eax, 0x20
ja 0x426397
je 0x426325
cmp eax, 0x10
ja case.0x4261c6.3
movzx eax, byte [eax + 0x426534]
jmp dword [eax*4 + 0x426524]
mov ecx, dword [0x4df87c]
mov eax, dword fs:[0x2c]
mov esi, dword [eax + ecx*4]
mov dword [esp + 0x10], esi
mov ecx, dword [esi + 4]
cmp dword [ecx + 0x130], 0
je 0x426250
add dword [ecx], 4
mov eax, dword [ecx]
cmp eax, dword [ecx + 4]
jne 0x426204
call fcn.0042e610
mov ecx, dword [esi + 4]
mov eax, dword [ecx]
push dword [ecx + 0xf4]
push dword [eax - 4]
call fcn.00424e40
mov eax, dword [esi + 4]
mov eax, dword [eax]
push dword [eax - 4]
push 0
push ebx
call fcn.004258f0
mov ecx, dword [esp + 0x24]
mov esi, eax
add esp, 0x14
mov ecx, dword [ecx + 4]
add dword [ecx], 0xfffffffc
mov ecx, dword [ecx]
mov eax, dword [ecx]
test dword [eax], 0xb405
je 0x42625f
push eax
call fcn.004237d0
add esp, 4
jmp 0x42625f
push 0
push 0
push ebx
call fcn.004258f0
add esp, 0xc
mov esi, eax
test esi, esi
je 0x426290
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x426268
sub ecx, edx
mov eax, 1
mov dword [edi], ecx
pop edi
mov dword [ebp], eax
mov eax, esi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x2c]
xor ecx, esp
call fcn.004a209e
add esp, 0x30
ret
xor eax, eax
mov dword [edi], 0
mov esi, 0x4baf8d
mov dword [ebp], eax
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x2c]
xor ecx, esp
call fcn.004a209e
add esp, 0x30
ret
mov esi, 0x4bb000
mov dword [edi], 3
jmp 0x426505
push ebx
call fcn.00424350
mov dword [edi], 0xa
mov ebx, eax
push 0xb
mov dword [ebp], 1
call fcn.004340b0
mov esi, eax
add esp, 8
mov edx, 0xa
mov word [esi], 0x7830
mov byte [esi + 0xa], 0
mov cl, bl
dec edx
and cl, 0xf
cmp cl, 0xa
sbb al, al
shr ebx, 4
and al, 0xf9
add al, 0x37
add al, cl
mov byte [edx + esi], al
cmp edx, 2
jg 0x4262f4
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x2c]
xor ecx, esp
call fcn.004a209e
add esp, 0x30
ret
push dword [ebx + 8]
lea eax, [esp + 0x18]
push eax
call fcn.00462910
push 0xb
call fcn.004340b0
mov ecx, dword [0x4df87c]
mov esi, eax
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + 4]
push dword [eax + 0xec]
lea eax, [esp + 0x24]
push esi
push eax
call fcn.0044b9d0
mov ecx, esi
add esp, 0x18
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x426370
sub ecx, edx
mov eax, esi
mov dword [edi], ecx
pop edi
pop esi
mov dword [ebp], 1
pop ebp
pop ebx
mov ecx, dword [esp + 0x2c]
xor ecx, esp
call fcn.004a209e
add esp, 0x30
ret
cmp eax, 0x100
ja 0x4264cb
je 0x426447
sub eax, 0x40
je 0x4263d9
sub eax, 0x40
jne case.0x4261c6.3
push ebx
call fcn.004240f0
add esp, 4
mov dword [edi], 3
test eax, eax
mov esi, 0x4bb004
mov ecx, 0x4bb008
cmove esi, ecx
jmp 0x426505
mov ecx, dword [0x4df87c]
mov eax, dword fs:[0x2c]
push dword [ebx + 0xc]
push dword [ebx + 8]
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + 4]
push dword [eax + 0x1b0]
push dword [eax + 0xec]
lea eax, [esp + 0x30]
push eax
call fcn.0044c090
lea eax, [esp + 0x34]
push eax
call fcn.0045fda0
mov esi, eax
add esp, 0x18
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x426420
sub ecx, edx
mov eax, esi
mov dword [edi], ecx
pop edi
pop esi
mov dword [ebp], 1
pop ebp
pop ebx
mov ecx, dword [esp + 0x2c]
xor ecx, esp
call fcn.004a209e
add esp, 0x30
ret
mov dword [ebp], 1
test dword [ebx], 0x100
je 0x42645b
mov ecx, dword [ebx + 8]
jmp 0x42645d
xor ecx, ecx
mov ecx, dword [ecx]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x426462
sub ecx, edx
lea eax, [ecx + 3]
mov dword [edi], eax
inc eax
push eax
call fcn.004340b0
mov esi, eax
add esp, 4
mov byte [esi], 0x40
test dword [ebx], 0x100
je 0x42648c
mov ecx, dword [ebx + 8]
jmp 0x42648e
xor ecx, ecx
mov eax, dword [edi]
sub eax, 3
push eax
push dword [ecx]
lea eax, [esi + 1]
push eax
call fcn.004a34e0
mov eax, dword [edi]
add esp, 0xc
mov byte [eax + esi - 2], 0x28
mov eax, dword [edi]
mov byte [eax + esi - 1], 0x29
mov eax, dword [edi]
pop edi
mov byte [esi + eax], 0
mov eax, esi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x2c]
xor ecx, esp
call fcn.004a209e
add esp, 0x30
ret
cmp eax, 0x400
je 0x4264e6
cmp eax, 0xc00
je 0x4264e6
mov esi, 0x4baf8d
mov dword [edi], 0
jmp 0x426505
and ecx, 0x400
je 0x4264f3
mov esi, dword [ebx + 0x10]
jmp 0x4264f8
mov esi, 0x4baf8d
test ecx, ecx
je 0x426501
mov eax, dword [ebx + 8]
jmp 0x426503
xor eax, eax
mov dword [edi], eax
mov ecx, dword [esp + 0x3c]
mov eax, esi
pop edi
pop esi
mov dword [ebp], 0
pop ebp
pop ebx
xor ecx, esp
call fcn.004a209e
add esp, 0x30
ret