Function at 0x1402bcd60
Capabilities:
Get disk information

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x110
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rax, qword [0x14042d950]
xor rax, rsp
mov qword [rsp + 0x100], rax
mov rsi, rcx
cmp dword [rcx + 4], 0
jge 0x1402bcead
call fcn.140049500
mov rdi, qword [rax]
lea rdx, [0x14037d9f0]
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037da00]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rsi, rax
xor edx, edx
mov r8d, 0x80
lea rbx, [0x140c492d0]
mov rcx, rbx
call sub.ntdll.dll_memset
mov edx, 0x5c
lea rcx, [0x14037da10]
call qword [sym.imp.ntdll.dll_strrchr]
mov rdi, rax
test rax, rax
jne 0x1402bce0c
xor r14d, r14d
jmp 0x1402bce93
mov byte [rsp + 0xf0], 0
xor eax, eax
mov qword [rsp + 0xf1], rax
mov word [rsp + 0xf9], ax
mov byte [rsp + 0xfb], al
mov r8d, 0x20f
lea rdx, [0x14037f684]
lea rcx, [rsp + 0xf0]
call qword [sym.imp.ntdll.dll_sprintf]
lea rdx, [rdi + 1]
mov rcx, rbx
sub rcx, rdx
movzx eax, byte [rdx]
mov byte [rcx + rdx], al
add rdx, 1
test al, al
jne 0x1402bce52
mov rdi, rbx
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
lea rdx, [rsp + 0xf0]
xor ecx, ecx
nop
nop
nop
movzx eax, byte [rdx + rcx]
mov byte [rdi + rcx - 1], al
add rcx, 1
test al, al
jne 0x1402bce80
mov r14, rbx
mov rax, qword [rsi]
mov r8, r14
lea rdx, [0x14037da28]
mov rcx, rsi
call qword [rax + 0x10]
xor eax, eax
jmp 0x1402bde3e
cmp dword [rcx + 0xb4], 0
je 0x1402bcf17
cmp qword [rcx + 0xd0], 0
jle 0x1402bcf17
call fcn.140049500
mov rdi, qword [rax]
lea rdx, str.1190
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037da50]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, 0x216
lea rcx, [0x14037da60]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037da78]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
cmp qword [rcx + 0xd0], 0
jge 0x1402bcf78
call fcn.140049500
mov rdi, qword [rax]
lea rdx, str.1191
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037daa0]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, reloc.MFC80U.DLL_Ordinal_541
lea rcx, [0x14037dab0]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037dac8]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
mov eax, dword [rcx + 0x8c]
cmp eax, 3
je 0x1402bcfe3
test eax, eax
je 0x1402bcfe3
cmp eax, 1
je 0x1402bcfe3
call fcn.140049500
mov rdi, qword [rax]
lea rdx, [0x14037dae0]
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037daf0]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, 0x226
lea rcx, [0x14037db00]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037db18]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
mov eax, dword [0x140c47dd0]
test al, 1
jne 0x1402bd007
or eax, 1
mov dword [0x140c47dd0], eax
call fcn.140055490
mov rcx, rax
mov qword [0x140c47dc8], rax
jmp 0x1402bd00e
mov rcx, qword [0x140c47dc8]
mov ebp, dword [rsi + 4]
mov rax, qword [rcx]
call qword [rax + 0x18]
mov rdi, rax
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
mov rbx, rax
test rax, rax
je 0x1402bddec
nop
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + 0x50]
cmp eax, ebp
je 0x1402bd053
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x20]
mov rbx, rax
test rax, rax
jne 0x1402bd030
jmp 0x1402bddec
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x58]
test eax, eax
jne 0x1402bdd98
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0xb8]
test eax, eax
jne 0x1402bdd98
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x60]
xor r14d, r14d
test eax, eax
jne 0x1402bd1b1
mov ebp, r14d
mov r12d, r14d
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x78]
mov r13, rax
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov rdi, rax
test rax, rax
je 0x1402bd1b1
mov rdx, qword [rdi]
mov rcx, rdi
call qword [rdx + 0xc0]
test eax, eax
je 0x1402bd0c8
add ebp, 1
jmp 0x1402bd0d9
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x78]
test al, al
je 0x1402bd0d9
add r12d, 1
mov rax, qword [r13]
mov rcx, r13
call qword [rax + 0x38]
mov rdi, rax
test rax, rax
jne 0x1402bd0b3
cmp ebp, 4
jne 0x1402bd147
call fcn.140049500
mov rdi, qword [rax]
lea rdx, str.0345
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037dbe0]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, Ordinal_599
lea rcx, [0x14037dbf0]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037dc08]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
cmp ebp, 3
jne 0x1402bd1b1
test r12d, r12d
jle 0x1402bd1b1
cmp dword [rsi + 0x94], r14d
je 0x1402bd1b1
call fcn.140049500
mov rdi, qword [rax]
lea rdx, str.1186
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037dc30]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, reloc.MFC80U.DLL_Ordinal_604
lea rcx, [0x14037dc40]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037dc58]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
call qword [sym.imp.KERNEL32.dll_GetLogicalDrives]
mov r11d, eax
movzx r8d, word [rsi + 8]
cmp r8w, 0x31
jne 0x1402bd203
mov ecx, 2
nop
nop
mov edx, 1
shl edx, cl
test eax, edx
je 0x1402bd1e5
add ecx, 1
cmp ecx, 0x1a
jl 0x1402bd1d0
jmp 0x1402bd1ed
add cx, 0x41
mov word [rsi + 8], cx
cmp word [rsi + 8], 0x31
jne 0x1402bd297
mov word [rsi + 8], 0x2a
jmp 0x1402bd297
mov ecx, 2
nop
nop
mov eax, 1
shl eax, cl
test r11d, eax
je 0x1402bd236
lea edi, [rcx + 0x41]
movzx edx, r8w
lea eax, [rdx - 0x61]
cmp ax, 0x19
ja 0x1402bd231
add dx, 0xffe0
cmp di, dx
je 0x1402bd240
add ecx, 1
cmp ecx, 0x1a
jge 0x1402bd297
jmp 0x1402bd210
call fcn.140049500
mov rdi, qword [rax]
lea rdx, [0x14037dc70]
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037dc80]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, Ordinal_647
lea rcx, [0x14037dc90]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037dca8]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
cmp dword [rsi + 0xb4], r14d
je 0x1402bd3ed
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x78]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov rdi, r14
test rax, rax
je 0x1402bd2da
nop
mov rdi, rax
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x78]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x38]
test rax, rax
jne 0x1402bd2c0
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x78]
test al, al
je 0x1402bd3ed
call fcn.140049500
mov rdi, qword [rax]
lea rdx, str.1188
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037dcd0]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rsi, rax
xor edx, edx
mov r8d, 0x80
lea rbx, [0x140c492d0]
mov rcx, rbx
call sub.ntdll.dll_memset
mov edx, 0x5c
lea rcx, [0x14037dce0]
call qword [sym.imp.ntdll.dll_strrchr]
mov rdi, rax
test rax, rax
je 0x1402bd3d3
mov byte [rsp + 0xf0], r14b
xor eax, eax
mov qword [rsp + 0xf1], rax
mov word [rsp + 0xf9], ax
mov byte [rsp + 0xfb], al
mov r8d, Ordinal_670
lea rdx, [0x14037f684]
lea rcx, [rsp + 0xf0]
call qword [sym.imp.ntdll.dll_sprintf]
lea rdx, [rdi + 1]
mov rcx, rbx
sub rcx, rdx
movzx eax, byte [rdx]
mov byte [rcx + rdx], al
add rdx, 1
test al, al
jne 0x1402bd392
mov rdi, rbx
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
lea rdx, [rsp + 0xf0]
xor ecx, ecx
nop
nop
nop
movzx eax, byte [rdx + rcx]
mov byte [rdi + rcx - 1], al
add rcx, 1
test al, al
jne 0x1402bd3c0
mov r14, rbx
mov rax, qword [rsi]
mov r8, r14
lea rdx, [0x14037dcf8]
mov rcx, rsi
call qword [rax + 0x10]
xor eax, eax
jmp 0x1402bde3e
mov eax, dword [rsi + 0x8c]
cmp eax, 3
je 0x1402bd421
test eax, eax
je 0x1402bd421
cmp eax, 1
jne 0x1402bd43f
lea rdi, [rsi + 0xa]
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasw ax, word [rdi]
not rcx
sub rcx, 1
cmp rcx, 0x20
jbe 0x1402bd43f
mov word [rsi + 0x4a], ax
jmp 0x1402bd43f
lea rdi, [rsi + 0xa]
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasw ax, word [rdi]
not rcx
sub rcx, 1
cmp rcx, 0xb
jbe 0x1402bd43f
mov word [rsi + 0x20], ax
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x60]
test eax, eax
je 0x1402bd456
mov dword [rsi + 0x94], 1
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0xb0]
cmp eax, 0x1000
jne 0x1402bd470
mov dword [rsi + 0x98], r14d
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0xb0]
movsxd rbp, eax
mov dword [rsp + 0x20], ebp
mov rdi, rbp
movabs rax, 0x20000000000
cqo
idiv rbp
mov r15, rax
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + 0x38]
mov r13, rax
cmp rax, r15
jl 0x1402bd4b8
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + 0x60]
test eax, eax
cmove r13, r15
mov eax, 0x200000
cdq
idiv ebp
movsxd rcx, eax
sub r13, rcx
mov eax, 0x100000
cqo
idiv rdi
mov rdi, rax
mov rbp, qword [rsi + 0xd0]
imul rbp, rax
cmp dword [rsi + 0x10e4], r14d
je 0x1402bd4eb
shl rbp, 0xa
cmp rbp, r13
jle 0x1402bd547
call fcn.140049500
mov rdi, qword [rax]
lea rdx, str.1183
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037dd20]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, 0x2cc
lea rcx, [0x14037dd30]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037dd48]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
mov qword [rsp + 0xf0], r14
cmp dword [rsi + 0xc0], r14d
jne 0x1402bd677
mov rcx, qword [rsi + 0xc8]
imul rcx, rdi
mov qword [rsp + 0xf0], rcx
cmp dword [rsi + 0x10e0], r14d
je 0x1402bd584
shl rcx, 0xa
mov qword [rsp + 0xf0], rcx
cmp dword [rsi + 0x98], r14d
je 0x1402bd598
add rcx, rax
mov qword [rsp + 0xf0], rcx
cmp dword [rsi + 0xb4], r14d
je 0x1402bd5b5
cqo
sub rax, rdx
sar rax, 1
mov rbp, r13
sub rbp, rax
sub rbp, rcx
sub rbp, rdi
lea r9, [rsp + 0xf0]
mov r8, rbp
mov rdx, rbx
mov rcx, rsi
call fcn.1402ba1f0
mov rcx, rax
test rax, rax
jne 0x1402bd6ec
mov rax, qword [rsp + 0xf0]
sub rax, rdi
mov qword [rsp + 0xf0], rax
cmp dword [rsi + 0x98], r14d
je 0x1402bd5fe
sub rax, rdi
mov qword [rsp + 0xf0], rax
lea r9, [rsp + 0xf0]
mov r8, rbp
mov rdx, rbx
mov rcx, rsi
call fcn.1402ba1f0
mov rcx, rax
test rax, rax
jne 0x1402bd6ec
call fcn.140049500
mov rdi, qword [rax]
lea rdx, str.1182
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037dd70]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, reloc.MFC80U.DLL_Ordinal_753
lea rcx, [0x14037dd80]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037dd98]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
lea r9, [rsp + 0xf0]
mov r8, rbp
mov rdx, rbx
mov rcx, rsi
call fcn.1402ba1f0
mov rcx, rax
test rax, rax
jne 0x1402bd6ec
call fcn.140049500
mov rdi, qword [rax]
lea rdx, str.1181
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037ddc0]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, Ordinal_766
lea rcx, [0x14037ddd0]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037dde8]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
test rbp, rbp
jne 0x1402bd6fa
mov rax, qword [rcx]
call qword [rax + 0x38]
mov rbp, rax
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0xa8]
mov edi, eax
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + 0xa0]
imul edi, eax
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x60]
test eax, eax
jne 0x1402bd748
cmp dword [rsi + 0x94], r14d
jne 0x1402bd748
cmp rbp, rdi
jge 0x1402bd748
mov rax, rdi
sub rax, rbp
mov rbp, rdi
mov r12, qword [rsp + 0xf0]
sub r12, rax
jmp 0x1402bd750
mov r12, qword [rsp + 0xf0]
cmp dword [rsi + 0x94], r14d
jne 0x1402bd777
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x60]
test eax, eax
jne 0x1402bd777
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0xa0]
mov edx, eax
add rbp, rdx
cmp dword [rsi + 0x98], r14d
je 0x1402bd7b7
mov rax, rbp
cqo
and edx, 0x7ff
add rax, rdx
and eax, 0x7ff
sub rax, rdx
test rax, rax
jle 0x1402bd7b7
mov ecx, 0x800
sub rcx, rax
add rbp, rcx
cmp dword [rsi + 0xc0], r14d
je 0x1402bd7b7
lea r12, [r12 + rax - 0x800]
mov rcx, r12
mov edi, dword [rsi + 0x8c]
cmp edi, 1
jne 0x1402bd7ca
lea rcx, [r12 + 1]
movabs rax, 0x100000000
cqo
movsxd r9, dword [rsp + 0x20]
mov r8, r9
idiv r9
cmp dword [rsi + 0xc0], r14d
jne 0x1402bd926
cmp rcx, 0x7ff58a
jle 0x1402bd853
cmp edi, 3
jne 0x1402bd853
call fcn.140049500
mov rdi, qword [rax]
lea rdx, [0x14037de00]
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037de10]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, 0x331
lea rcx, [0x14037de20]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037de38]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
movabs rax, 0x100000000
cmp rcx, rax
jle 0x1402bd8c2
test edi, edi
je 0x1402bd86b
cmp edi, 3
jne 0x1402bd8c2
call fcn.140049500
mov rdi, qword [rax]
lea rdx, [0x14037de50]
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037de60]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, 0x337
lea rcx, [0x14037de70]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037de88]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
lea rax, [rcx + rbp]
cmp rax, r13
jle 0x1402bd973
call fcn.140049500
mov rdi, qword [rax]
lea rdx, str.1184
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037deb0]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, 0x33d
lea rcx, [0x14037dec0]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037ded8]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
cmp rcx, rax
jle 0x1402bd93b
cmp edi, 3
jne 0x1402bd93b
cqo
sub rax, rdx
sar rax, 1
mov rcx, rax
cmp rcx, r15
jle 0x1402bd952
test edi, edi
jne 0x1402bd952
mov rax, r15
cqo
sub rax, rdx
sar rax, 1
mov rcx, rax
lea rax, [rcx + rbp]
cmp rax, r13
jle 0x1402bd967
mov rax, rcx
sub rax, r13
add rax, rbp
sub rcx, rax
mov r12, rcx
cmp edi, 1
jne 0x1402bd973
lea r12, [rcx - 1]
cmp rbp, r13
jle 0x1402bd9cf
call fcn.140049500
mov rdi, qword [rax]
lea rdx, str.0344
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037df00]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, 0x35a
lea rcx, [0x14037df10]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037df28]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
mov eax, 0x1400000
cqo
idiv r8
cmp r12, rax
jge 0x1402bda35
call fcn.140049500
mov rdi, qword [rax]
lea rdx, str.1185
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037df50]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, 0x362
lea rcx, [0x14037df60]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037df78]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
mov rdx, rbp
mov rcx, rbx
call fcn.140222d90
test eax, eax
jne 0x1402bdb13
cmp dword [rsi + 0xdc], r14d
jne 0x1402bdb13
lea rcx, [rsp + 0xf0]
call qword [sym.imp.MFC80U.DLL_Ordinal_296]
nop
call fcn.140049500
mov rdi, qword [rax]
lea rdx, [0x14037df90]
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [rsp + 0xf0]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
lea rcx, [rsp + 0xf0]
call qword [sym.imp.MFC80U.DLL_Ordinal_2492]
mov rcx, rax
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049500
mov rdi, qword [rax]
lea rdx, str.1172
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [rsp + 0xf0]
call qword [sym.imp.MFC80U.DLL_Ordinal_788]
mov edi, 0x1e
nop
nop
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0xf0]
call qword [sym.imp.MFC80U.DLL_Ordinal_2492]
mov rdx, rax
mov r8, rdi
lea rcx, str._r_s_d
call qword [sym.imp.MSVCR80.dll_wprintf]
sub rdi, 1
test rdi, rdi
jg 0x1402bdad0
lea rcx, [rsp + 0xf0]
call qword [sym.imp.MFC80U.DLL_Ordinal_588]
xor edx, edx
mov r8d, 0xb0
lea rcx, [rsp + 0x40]
call sub.ntdll.dll_memset
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + 0x50]
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x50], r12
mov eax, dword [rsi + 0x94]
mov dword [rsp + 0x58], eax
movzx eax, word [rsi + 8]
mov word [rsp + 0x5c], ax
lea rcx, [rsi + 0xa]
lea rdx, [rsp + 0x5e]
sub rdx, rcx
nop
nop
movzx eax, word [rcx]
mov word [rcx + rdx], ax
add rcx, 2
test ax, ax
jne 0x1402bdb60
mov ecx, dword [rsi + 0x8c]
mov dword [rsp + 0xe0], ecx
mov eax, dword [rsi + 0x98]
mov dword [rsp + 0xec], eax
mov word [rsp + 0xe4], 0
cmp ecx, 1
jne 0x1402bdbb9
call fcn.1400d6a30
mov rdi, qword [rax]
mov r8d, dword [rsp + 0x20]
mov rdx, r12
mov rcx, rax
call qword [rdi + 0x28]
mov word [rsp + 0xe4], ax
jmp 0x1402bdbdf
call fcn.140116720
mov rdi, qword [rax]
mov r9d, dword [rsp + 0x20]
mov r8d, dword [rsp + 0xe0]
mov rdx, r12
mov rcx, rax
call qword [rdi + 0x40]
mov word [rsp + 0xe4], ax
mov qword [rsp + 0x28], r14
mov eax, dword [0x140c47dc0]
test al, 1
jne 0x1402bdc08
or eax, 1
mov dword [0x140c47dc0], eax
call fcn.1400554f0
mov rcx, rax
mov qword [0x140c47db8], rax
jmp 0x1402bdc0f
mov rcx, qword [0x140c47db8]
mov rax, qword [rcx]
lea r8, [rsp + 0x28]
lea rdx, [rsp + 0x40]
call qword [rax + 0x10]
test eax, eax
jne 0x1402bdc7a
call fcn.140049500
mov rdi, qword [rax]
lea rdx, [0x14037dfc0]
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037dfd0]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, reloc.MFC80U.DLL_Ordinal_914
lea rcx, [0x14037dfe0]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037dff8]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
mov rcx, qword [rsp + 0x28]
test rcx, rcx
jne 0x1402bdcdb
call fcn.140049500
mov rdi, qword [rax]
lea rdx, [0x14037e010]
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037e020]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, 0x399
lea rcx, [0x14037e030]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037e048]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
cmp dword [rsi + 0x90], 0
je 0x1402bdd09
mov rax, qword [rcx]
mov edx, 1
call qword [rax + Ordinal_393]
mov rcx, qword [rsp + 0x28]
mov rax, qword [rcx]
mov dx, 0x2a
call qword [rax + reloc.MFC80U.DLL_Ordinal_280]
mov rcx, qword [rsp + 0x28]
cmp dword [rsi + 0x9c], 0
je 0x1402bdd8e
cmp dword [rsi + 0x94], 0
je 0x1402bdd8e
mov rax, qword [rcx]
mov edx, 1
call qword [rax + Ordinal_403]
mov rcx, qword [rsp + 0x28]
mov rax, qword [rcx]
call qword [rax + 0x28]
mov rbx, rax
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov rdi, rax
test rax, rax
je 0x1402bdd8e
cmp rdi, qword [rsp + 0x28]
je 0x1402bdd7d
mov rdx, qword [rdi]
mov rcx, rdi
call qword [rdx + 0xe0]
test eax, eax
je 0x1402bdd7d
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0xc0]
test eax, eax
je 0x1402bdd7d
mov rax, qword [rdi]
xor edx, edx
mov rcx, rdi
call qword [rax + Ordinal_403]
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + 0x38]
mov rdi, rax
test rax, rax
jne 0x1402bdd48
mov eax, 1
jmp 0x1402bde3e
call fcn.140049500
mov rdi, qword [rax]
lea rdx, [0x14037db80]
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037db90]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, 0x239
lea rcx, [0x14037dba0]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037dbb8]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
jmp 0x1402bde3e
call fcn.140049500
mov rdi, qword [rax]
lea rdx, [0x14037db30]
mov rcx, rax
call qword [rdi]
mov rdx, rax
lea rcx, [0x14037db40]
call qword [sym.imp.MSVCR80.dll_wprintf]
call fcn.140049470
mov rdi, rax
mov rbx, qword [rax]
mov edx, Ordinal_563
lea rcx, [0x14037db50]
call fcn.1402bac60
mov r8, rax
lea rdx, [0x14037db68]
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
mov rcx, qword [rsp + 0x100]
xor rcx, rsp
call fcn.140161080
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret