Function at 0x427e60
Capabilities:
Access peb ldr_data
Get kernel32 base address
Get storage device properties

Disassembly:
push ebp
lea ebp, [esp - 0x78]
sub esp, 0x78
push 0xffffffffffffffff
push 0x517f36
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
mov eax, dword [0x755f7c]
xor eax, ebp
mov dword [ebp + 0x74], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp + 0x24], ebx
push 1
push 0x78
call dword [0x519e00]
mov ecx, dword [ebx + 0x18]
mov ecx, dword [ecx + 0x4c]
call dword [0x519788]
mov edi, dword [0x5195f4]
push 0x24
push 0x5310a8
call edi
add esp, 8
mov dword [ebp + 0x28], eax
mov ecx, dword [ebx + 0x18]
lea eax, [ebp + 0x28]
push eax
mov dword [ebp - 4], 0
mov ecx, dword [ecx + 0x30]
call dword [0x519798]
lea ecx, [ebp + 0x28]
mov dword [ebp - 4], 0xffffffff
call dword [0x519680]
push 0x1ae
push 0x2a8
mov ecx, ebx
call dword [0x519778]
call fcn.00406c40
push 0
push ecx
mov esi, esp
mov dword [ebx + 0x2c], eax
push 0
push 0x51a2fa
call edi
add esp, 8
mov dword [esi], eax
lea ecx, [ebp - 0x28]
call fcn.00401b00
lea eax, [ebp]
mov dword [ebp - 4], 1
push eax
lea ecx, [ebp - 0x28]
call fcn.00402d00
lea eax, [ebp + 8]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x28]
call fcn.00402fa0
mov ecx, dword [ebx + 0x2c]
lea eax, [ebp + 0xc]
push eax
mov byte [ebp - 4], 3
call fcn.00406b50
push 0xc
push 0x51aa9c
mov byte [ebp - 4], 4
call edi
add esp, 8
mov dword [ebp + 0x28], eax
push 1
lea eax, [ebp]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp + 0x28]
push eax
lea ecx, [ebp + 0xc]
call dword [0x519620]
push eax
lea ecx, [ebx + 0x30]
call dword [0x519634]
lea ecx, [ebp + 0x28]
mov byte [ebp - 4], 4
call dword [0x519680]
push 0xa
push 0x51aaac
call edi
add esp, 8
mov dword [ebp + 0x28], eax
push 1
lea eax, [ebp + 8]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp + 0x28]
push eax
lea ecx, [ebp + 0xc]
call dword [0x519620]
push eax
lea ecx, [ebx + 0x30]
call dword [0x519634]
lea ecx, [ebp + 0x28]
mov byte [ebp - 4], 4
call dword [0x519680]
push 0x6c
call dword [0x51a000]
add esp, 4
mov esi, eax
mov dword [ebp + 0x18], esi
push 0x6c
push esi
call dword [0x5190dc]
movsx ecx, byte [esi]
push ecx
call dword [0x51a148]
add esp, 4
mov byte [ebp + 0x28], al
push esi
push 0x6c
call dword [0x5190d8]
test eax, eax
je 0x42815c
mov cl, byte [esi]
xor ebx, ebx
mov dword [ebp + 0x20], ebx
test cl, cl
je 0x428159
movsx eax, byte [ebp + 0x28]
mov edi, esi
mov dword [ebp + 0x10], eax
nop
movsx eax, cl
push eax
call dword [0x51a148]
add esp, 4
cmp eax, dword [ebp + 0x10]
je 0x42811a
push edi
call dword [0x5190e4]
cmp eax, 3
jne 0x42811a
movsx eax, byte [edi]
movq xmm0, qword [0x531078]
movzx ecx, ax
mov eax, dword [0x531080]
mov dword [ebp + 0x6c], eax
movzx eax, word [0x531084]
mov word [ebp + 0x70], ax
xor eax, eax
push eax
push 0x80
push 3
push eax
push 3
mov word [ebp + 0x72], ax
lea eax, [ebp + 0x64]
push 0x80000000
push eax
movq qword [ebp + 0x64], xmm0
mov word [ebp + 0x6c], cx
call dword [0x519108]
mov ebx, eax
cmp ebx, 0xffffffff
je 0x4280f3
push 0
lea eax, [ebp + 0x2c]
mov dword [ebp + 0x2c], 0
push eax
push 0x28
lea eax, [ebp + 0x30]
mov dword [ebp + 0x58], 0
push eax
push 0xc
lea eax, [ebp + 0x58]
mov dword [ebp + 0x5c], 0
push eax
push 0x2d1400
push ebx
mov dword [ebp + 0x34], 0x28
call dword [0x5190e0]
push ebx
mov esi, eax
call dword [0x519154]
test esi, esi
mov esi, dword [ebp + 0x18]
je 0x4280f3
mov eax, dword [ebp + 0x4c]
cmp eax, 7
je 0x428117
cmp eax, 0xc
je 0x428117
cmp eax, 0xd
je 0x428117
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x14]
push eax
push edi
call dword [0x5190e8]
cmp dword [ebp - 0x10], 0
ja 0x42813f
jb 0x428117
cmp dword [ebp - 0x14], 0x11e1a300
ja 0x42813f
mov ebx, dword [ebp + 0x20]
mov eax, esi
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x428120
sub eax, edx
inc ebx
add ebx, eax
mov cl, byte [ebx + esi]
lea edi, [ebx + esi]
mov dword [ebp + 0x20], ebx
test cl, cl
jne 0x428020
jmp 0x428153
mov eax, dword [ebp + 0x20]
movsx eax, byte [eax + esi]
push eax
call dword [0x51a148]
add esp, 4
mov byte [ebp + 0x28], al
mov edi, dword [0x5195f4]
mov ebx, dword [ebp + 0x24]
push esi
call dword [0x519ffc]
push 3
push 0x5310d0
call edi
mov dword [ebp + 0x24], eax
add esp, 8
mov byte [ebp + 0x2c], 0x20
mov ecx, esp
mov byte [ebp - 4], 7
push dword [ebp + 0x2c]
call dword [0x51955c]
push 0
push dword [ebp + 0x28]
lea eax, [ebp + 0x10]
push eax
lea ecx, [ebp + 0x24]
call dword [0x5191d8]
push 1
push eax
lea eax, [ebp + 8]
mov byte [ebp - 4], 8
push eax
lea ecx, [ebp + 0xc]
call dword [0x519620]
push eax
lea ecx, [ebx + 0x30]
call dword [0x519634]
lea ecx, [ebp + 0x10]
call dword [0x519680]
lea ecx, [ebp + 0x24]
mov byte [ebp - 4], 4
call dword [0x519680]
mov ecx, dword [ebx + 0x18]
push 1
mov ecx, dword [ecx + 0x38]
call dword [0x519878]
mov eax, dword [0x5195f4]
push ecx
mov edi, esp
push ecx
mov esi, esp
push 7
push 0x51a678
call eax
add esp, 8
mov dword [esi], eax
mov ecx, dword [ebx + 0x2c]
push edi
call fcn.00406a50
lea eax, [ebp + 0x1c]
push eax
lea ecx, [ebp - 0x28]
call fcn.00402e90
mov esi, dword [0x5195f4]
push 1
push 0x51a364
mov byte [ebp - 4], 9
call esi
mov dword [ebp + 0x24], eax
push 1
push 0x51a578
mov byte [ebp - 4], 0xa
call esi
add esp, 0x10
mov dword [ebp + 0x28], eax
mov edi, dword [0x519620]
lea eax, [ebp + 0x24]
push 1
push eax
lea eax, [ebp + 0x28]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp + 0x1c]
call edi
lea ecx, [ebp + 0x28]
call dword [0x519680]
lea ecx, [ebp + 0x24]
mov byte [ebp - 4], 9
call dword [0x519680]
push 1
push 0x51a364
call esi
mov dword [ebp + 0x24], eax
push 2
push 0x52f990
mov byte [ebp - 4], 0xc
call esi
add esp, 0x10
mov dword [ebp + 0x28], eax
push 1
lea eax, [ebp + 0x24]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp + 0x28]
push eax
lea ecx, [ebp + 0x1c]
call edi
lea ecx, [ebp + 0x28]
call dword [0x519680]
lea ecx, [ebp + 0x24]
mov byte [ebp - 4], 9
call dword [0x519680]
mov eax, dword [ebp + 0x1c]
lea ecx, [ebp + 0x1c]
push 1
push 0xffffffffffffffff
push 0x51a2fa
push dword [eax + 4]
call dword [0x519628]
push eax
call dword [0x5195f8]
mov ecx, dword [ebx + 0x18]
add esp, 0x14
test eax, eax
lea eax, [ebx + 0x30]
mov ecx, dword [ecx + 0x58]
je 0x4282d9
lea eax, [ebp + 0x1c]
push eax
call dword [0x519868]
mov ecx, dword [ebx + 0x2c]
call fcn.00406ea0
mov edi, dword [0x519560]
test al, al
jne 0x428302
mov ecx, dword [ebx + 0x18]
push 1
mov ecx, dword [ecx + 0x60]
call dword [0x5198b0]
jmp 0x428327
mov eax, dword [ebx + 0x18]
push 0
push 0x5310d4
push ebx
push 0x51c680
push dword [eax + 0x60]
lea eax, [ebp + 0x2c]
push eax
call dword [0x51952c]
add esp, 0x18
lea ecx, [ebp + 0x2c]
call edi
mov ecx, dword [ebx + 0x18]
push 0
mov ecx, dword [ecx + 0x58]
call dword [0x519870]
mov ecx, dword [ebx + 0x18]
push 0
mov ecx, dword [ecx + 0x58]
call dword [0x51986c]
mov eax, dword [0x5195f4]
push ecx
mov esi, esp
push 4
push 0x51a57c
call eax
add esp, 8
mov dword [esi], eax
mov ecx, dword [ebx + 0x2c]
lea eax, [ebp + 4]
push eax
call fcn.00406a50
lea eax, [ebp + 4]
mov byte [ebp - 4], 0xe
push eax
mov ecx, ebx
call dword [0x51979c]
mov eax, dword [ebx + 0x18]
mov esi, dword [0x51952c]
push 0
push 0x520048
push ebx
push 0x51c680
push dword [eax + 0x24]
lea eax, [ebp + 0x2c]
push eax
call esi
add esp, 0x18
lea ecx, [ebp + 0x2c]
call edi
mov eax, dword [ebx + 0x18]
push 0
push 0x51c68c
push ebx
push 0x51c680
push dword [eax + 0x20]
lea eax, [ebp + 0x2c]
push eax
call esi
add esp, 0x18
lea ecx, [ebp + 0x2c]
call edi
mov eax, dword [ebx + 0x18]
push 0
push 0x5310e4
push ebx
push 0x51c680
push dword [eax + 0x2c]
lea eax, [ebp + 0x2c]
push eax
call esi
add esp, 0x18
lea ecx, [ebp + 0x2c]
call edi
mov eax, dword [ebx + 0x18]
push 0
push 0x5310f4
push ebx
push 0x531108
push dword [eax + 0x38]
lea eax, [ebp + 0x2c]
push eax
call esi
add esp, 0x18
lea ecx, [ebp + 0x2c]
call edi
mov eax, dword [ebx + 0x18]
push 0
push 0x531118
push ebx
push 0x51c680
push dword [eax + 0x3c]
lea eax, [ebp + 0x2c]
push eax
call esi
add esp, 0x18
lea ecx, [ebp + 0x2c]
call edi
mov eax, dword [ebx + 0x18]
push 0
push 0x53112c
push ebx
push 0x531158
push dword [eax + 0x5c]
lea eax, [ebp + 0x2c]
push eax
call esi
add esp, 0x18
lea ecx, [ebp + 0x2c]
call edi
mov eax, dword [0x519874]
mov dword [ebp - 0x14], eax
mov eax, dword [ebx + 0x18]
mov dword [ebp + 0x14], fcn.00427d60
mov dword [ebp + 0x18], 0
mov dword [ebp - 0x10], 0
mov esi, dword [eax + 0x30]
push 0x10
call fcn.00510641
mov dword [ebp + 0x10], eax
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x18]
mov dword [eax], 1
mov dword [eax + 4], 0x425d10
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
push dword [0x5197e0]
push 0
push 0
push eax
lea eax, [ebp + 0x14]
push eax
push ebx
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp + 0x2c]
push esi
push eax
call dword [0x519528]
add esp, 0x28
lea ecx, [ebp + 0x2c]
call edi
lea ecx, [ebp + 4]
call dword [0x519680]
lea ecx, [ebp + 0x1c]
call dword [0x519680]
lea ecx, [ebp + 0xc]
call dword [0x519680]
lea ecx, [ebp + 8]
call dword [0x519680]
lea ecx, [ebp]
call dword [0x519680]
lea ecx, [ebp - 0x18]
call dword [0x519680]
lea ecx, [ebp - 0x28]
call dword [0x519674]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x74]
xor ecx, ebp
call fcn.00510382
lea esp, [ebp + 0x78]
pop ebp
ret