Function at 0x1400356e0
Capabilities:
Get memory capacity

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x210
xor ebx, ebx
mov rbp, r8
mov r14, rdx
mov edi, ecx
cmp qword [0x1401350a8], rbx
jne 0x140035717
or eax, 0xffffffff
jmp 0x140036879
xor edx, edx
lea rcx, [rsp + 0x7c]
or esi, 0xffffffff
lea r8d, [rdx + 0x14]
mov r13d, ebx
mov r15d, ebx
mov dword [rsp + 0x90], ebx
mov dword [rsp + 0xa8], ebx
mov dword [rsp + 0x98], ebx
mov dword [rsp + 0xc4], ebx
mov qword [rsp + 0xb8], rbx
mov r12, rbx
mov qword [rsp + 0xb0], rbx
mov dword [rsp + 0x70], esi
mov dword [rsp + 0x78], ebx
call fcn.1400fae60
xor eax, eax
mov dword [rsp + 0x68], ebx
mov dword [rsp + 0x6c], eax
mov rax, qword [rbp]
mov ebp, 1
movzx eax, word [rax]
lea r10d, [rbp + 1]
mov r8d, 0xfa0
mov r9d, ebx
mov dword [rsp + 0x94], ebx
mov byte [rsp + 0x268], bl
mov word [rsp + 0xc0], ax
mov edx, ebx
mov dword [rsp + 0x60], ebx
mov rcx, rbx
mov qword [rsp + 0x58], rbx
mov dword [rsp + 0x50], r8d
cmp edi, r10d
jne 0x1400358b4
mov rcx, qword [r14 + 8]
lea rdx, [0x14011a9b0]
call fcn.1400fc014
cmp eax, ebx
jne 0x1400358bc
mov rax, qword [0x1401350b0]
mov qword [rsp + 0xb0], rbx
mov qword [rsp + 0x268], rbx
cmp rax, rbx
je 0x140035802
lea rdx, [rsp + 0x268]
lea rcx, [rsp + 0xb0]
call rax
lea rcx, [rsp + 0xb8]
call fcn.140061698
lea rdx, [rsp + 0xb8]
mov r8d, 0x3f
mov ecx, ebp
call fcn.14001c7d8
mov rcx, qword [rsp + 0x268]
lea rdx, [0x14011a9a8]
cmp eax, 2
jne 0x140035841
lea r10, str.NotLoad
jmp 0x14003585d
cmp eax, 0xffffffff
jne 0x14003584f
lea r10, str.CannotControl
jmp 0x14003585d
lea r10, str.NotInstall
cmp rcx, rbx
cmova r10, rdx
mov rax, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0x260]
movzx edx, cl
shr rcx, 8
mov qword [rsp + 0x30], r10
mov dword [rsp + 0x28], edx
movsx ecx, cx
movzx r9d, al
shr rax, 8
mov dword [rsp + 0x20], ecx
mov rcx, qword [rbx]
lea rdx, str._X._02X___X._X__s
movsx r8d, ax
call qword [sym.imp.USER32.dll_wsprintfW]
lea rcx, [rsp + 0xb8]
call fcn.1400591f8
xor eax, eax
jmp 0x140036879
cmp edi, ebp
jle 0x140036454
add r14, 8
lea rdx, str.__id
sub edi, ebp
mov rcx, qword [r14]
mov dword [rsp + 0x250], edi
call fcn.1400fc014
cmp eax, ebx
jne 0x1400358ef
mov rcx, qword [rsp + 0x58]
or rcx, 2
mov qword [rsp + 0x58], rcx
jmp 0x1400363fe
mov rcx, qword [r14]
lea rdx, [0x14011a918]
call fcn.1400fc014
cmp eax, ebx
jne 0x14003590c
mov rcx, qword [rsp + 0x58]
or rcx, rbp
jmp 0x1400358e5
mov rcx, qword [r14]
lea rdx, str.__remove
call fcn.1400fc014
cmp eax, ebx
jne 0x14003592a
mov rcx, qword [rsp + 0x58]
or rcx, 4
jmp 0x1400358e5
mov rcx, qword [r14]
lea rdx, [0x14011a8f8]
call fcn.1400fc014
cmp eax, ebx
jne 0x140035948
mov r13d, 5
jmp 0x1400363f9
mov rcx, qword [r14]
lea rdx, str.__hide
call fcn.1400fc014
cmp eax, ebx
jne 0x140035969
mov rcx, qword [rsp + 0x58]
or rcx, 0x10
jmp 0x1400358e5
mov rcx, qword [r14]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r10d, 2
mov ecx, ebx
cmp eax, r10d
jne 0x140035989
mov rax, qword [r14]
cmp word [rax], 0x2d
sete cl
cmp ecx, ebx
je 0x1400358ad
mov rax, qword [r14]
movzx edx, word [rax + 2]
cmp edx, 0x6d
jg 0x140035c5b
je 0x140035c18
cmp edx, 0x62
jg 0x140035b35
je 0x140035a4d
mov ecx, edx
mov r8d, 0x44
sub ecx, r8d
je 0x140035bd1
sub ecx, r10d
je 0x140035b63
sub ecx, 0xc
je 0x140035bd1
sub ecx, ebp
je 0x1400359f7
cmp ecx, 0xe
jne 0x1400358ad
cmp r13d, ebx
jne 0x1400358ad
mov r13d, ebp
jmp 0x1400363f9
cmp dword [rsp + 0x8c], ebx
mov eax, ebx
mov ecx, ebx
setne cl
cmp r13d, ebp
setne al
or ecx, eax
cmp edi, r10d
mov eax, ebx
setl al
or ecx, eax
jne 0x1400358ad
add r14, 8
mov rax, qword [r14]
movzx ecx, word [rax]
call fcn.1400fc80c
cmp eax, ebx
je 0x1400358ad
mov rcx, qword [r14]
xor r8d, r8d
xor edx, edx
call fcn.1400fc748
mov dword [rsp + 0x8c], eax
jmp 0x1400363f7
cmp dword [rsp + 0x94], ebx
mov eax, ebx
mov ecx, ebx
setne cl
cmp qword [rsp + 0x68], rbx
setne al
or ecx, eax
cmp r13d, ebp
mov eax, ebx
setne al
or ecx, eax
cmp edi, r10d
mov eax, ebx
setl al
or ecx, eax
jne 0x1400358ad
add r14, 8
lea rdx, [0x14011a8d8]
mov rcx, qword [r14]
call fcn.1400fc014
cmp eax, ebx
jne 0x140035aa2
mov dword [rsp + 0x94], ebp
jmp 0x1400363f7
mov rax, qword [r14]
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0xa0]
mov qword [rsp + 0xa0], rax
call fcn.140065c88
mov r11, qword [rsp + 0xa0]
movzx eax, word [r11]
cmp eax, 0x62
jg 0x140035d1b
je 0x140035b2a
cmp eax, ebx
je 0x1400363f7
cmp eax, 0x47
je 0x140035b0f
cmp eax, 0x4b
je 0x140035b08
cmp eax, 0x4d
je 0x140035b01
cmp eax, 0x54
jne 0x140035d1b
mov rax, qword [rsp + 0x68]
shl rax, 0xa
jmp 0x140035b14
mov rax, qword [rsp + 0x68]
jmp 0x140035b18
mov rax, qword [rsp + 0x68]
jmp 0x140035b1c
mov rax, qword [rsp + 0x68]
shl rax, 0xa
shl rax, 0xa
shl rax, 0xa
mov qword [rsp + 0x68], rax
jmp 0x1400363f7
shl qword [rsp + 0x68], 9
jmp 0x1400363f7
mov ecx, edx
sub ecx, 0x64
je 0x140035bcb
sub ecx, ebp
je 0x140035bb7
sub ecx, ebp
je 0x140035b63
cmp ecx, 6
jne 0x1400358ad
cmp r13d, ebx
jne 0x1400358ad
lea r13d, [rcx - 3]
jmp 0x1400363f9
cmp qword [rsp + 0xb8], rbx
mov eax, ebx
mov ecx, ebx
setne cl
cmp r13d, ebp
setne al
or ecx, eax
cmp edi, r10d
mov eax, ebx
setl al
or ecx, eax
jne 0x1400358ad
mov eax, dword [rsp + 0x90]
cmp edx, 0x46
cmove eax, ebp
add r14, 8
mov rcx, qword [r14]
mov dword [rsp + 0x90], eax
call fcn.14001bb70
mov qword [rsp + 0xb8], rax
jmp 0x1400363f7
cmp r13d, ebx
jne 0x1400358ad
mov r13d, 4
jmp 0x1400363f9
mov r8d, 0x44
cmp r13d, ebx
jne 0x1400358ad
mov eax, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x58]
cmp dx, r8w
mov r8d, dword [rsp + 0x50]
cmove eax, ebp
mov r13d, r10d
mov dword [rsp + 0x98], eax
cmp edx, 0x52
jne 0x140036403
mov dword [rsp + 0x98], ebp
mov dword [rsp + 0xc4], ebp
jmp 0x140036403
cmp esi, 0xffffffff
mov eax, ebx
mov ecx, ebx
setne cl
cmp r13d, 4
setne al
and ecx, eax
cmp r13d, ebp
mov eax, ebx
setne al
and ecx, eax
cmp r12, rbx
mov eax, ebx
setne al
or ecx, eax
cmp edi, r10d
mov eax, ebx
setl al
or ecx, eax
jne 0x1400358ad
add r14, 8
mov r12, qword [r14]
jmp 0x1400363f7
cmp edx, 0x74
jg 0x14003626a
je 0x1400361e3
sub edx, 0x6e
je 0x1400361d7
sub edx, ebp
je 0x140035e91
sub edx, ebp
je 0x140035e4c
sub edx, ebp
je 0x140035e3b
cmp edx, r10d
jne 0x1400358ad
cmp r13d, 4
mov eax, ebx
mov ecx, ebx
setne cl
cmp r13d, ebp
setne al
and ecx, eax
cmp qword [rsp + 0x78], rbx
mov eax, ebx
setne al
or ecx, eax
cmp edi, r10d
mov eax, ebx
setl al
or ecx, eax
jne 0x1400358ad
add r14, 8
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0xa0]
mov rax, qword [r14]
mov qword [rsp + 0xa0], rax
call fcn.140065c88
mov r11, qword [rsp + 0xa0]
movzx eax, word [r11]
cmp eax, 0x54
jg 0x140035d9c
je 0x140035d82
cmp eax, ebx
je 0x140035e05
cmp eax, 0x25
je 0x140035d25
cmp eax, 0x47
je 0x140035d88
cmp eax, 0x4b
je 0x140035d94
cmp eax, 0x4d
je 0x140035d8e
mov eax, 0xa
jmp 0x140036879
cmp qword [rsp + 0x78], 0x64
mov ecx, ebx
mov eax, ebx
setge cl
cmp qword [rsp + 0x78], rbx
setle al
or ecx, eax
jne 0x1400358ad
lea rcx, [rsp + 0xd0]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
mov r11, qword [rsp + 0xe0]
movabs rax, 0x47ae147ae147ae15
imul r11, qword [rsp + 0x78]
mul r11
sub r11, rdx
shr r11, 1
add r11, rdx
shr r11, 6
mov qword [rsp + 0x78], r11
jmp 0x140035e05
shl qword [rsp + 0x78], 0xa
shl qword [rsp + 0x78], 0xa
shl qword [rsp + 0x78], 0xa
shl qword [rsp + 0x78], 0xa
jmp 0x140035e05
cmp eax, 0x62
je 0x140035dff
cmp eax, 0x67
je 0x140035dca
cmp eax, 0x6b
je 0x140035dec
cmp eax, 0x6d
je 0x140035ddb
cmp eax, 0x74
jne 0x140035d1b
mov rax, qword [rsp + 0x78]
imul rax, rax, 0x3e8
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
imul rax, rax, 0x3e8
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
imul rax, rax, 0x3e8
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
imul rax, rax, 0x3e8
mov qword [rsp + 0x78], rax
jmp 0x140035e05
shl qword [rsp + 0x78], 9
cmp qword [rsp + 0x78], rbx
jge 0x1400363f7
lea rcx, [rsp + 0xd0]
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatus]
mov r11, qword [rsp + 0xe0]
add qword [rsp + 0x78], r11
jns 0x1400363f7
mov eax, 0xb
jmp 0x140036879
mov rcx, qword [rsp + 0x58]
mov r8d, ebp
mov dword [rsp + 0x50], ebp
jmp 0x140036403
cmp r13d, ebp
je 0x140035e59
mov edx, ebp
cmp r13d, 4
jne 0x140035e5b
mov edx, ebx
mov rax, qword [rsp + 0xb0]
mov ecx, ebx
cmp rax, rbx
mov eax, ebx
setne cl
cmp edi, r10d
setl al
or ecx, eax
or ecx, edx
jne 0x1400358ad
add r14, 8
mov rax, qword [r14]
mov qword [rsp + 0xb0], rax
jmp 0x1400363f7
cmp r13d, 4
mov eax, ebx
mov ecx, ebx
setne cl
cmp r13d, ebp
setne al
and ecx, eax
cmp edi, r10d
mov eax, ebx
setl al
or ecx, eax
jne 0x1400358ad
add r14, 8
lea rdx, [0x140116a24]
mov rcx, qword [r14]
call fcn.1400fc424
movsxd rsi, r13d
jmp 0x1400361bb
lea rdx, [0x14011a8d0]
mov rcx, rdi
call fcn.1400fc014
cmp eax, ebx
jne 0x140035efd
mov eax, dword [rsp + 0x60]
test bpl, al
jne 0x1400358ad
or eax, ebp
or r15d, ebp
mov dword [rsp + 0x60], eax
jmp 0x1400361ad
lea rdx, [0x14011a8c8]
mov rcx, rdi
call fcn.1400fc014
cmp eax, ebx
jne 0x140035f2c
mov eax, dword [rsp + 0x60]
test bpl, al
jne 0x1400358ad
or eax, ebp
and r15d, 0xfffffffe
mov dword [rsp + 0x60], eax
jmp 0x1400361ad
lea rdx, [0x14011a8c0]
mov rcx, rdi
call fcn.1400fc014
cmp eax, ebx
jne 0x140035f5b
mov eax, dword [rsp + 0x60]
test al, 2
jne 0x1400358ad
or eax, 2
or r15d, 2
mov dword [rsp + 0x60], eax
jmp 0x1400361ad
lea rdx, [0x14011a8b8]
mov rcx, rdi
call fcn.1400fc014
cmp eax, ebx
jne 0x140035f8a
mov eax, dword [rsp + 0x60]
test al, 2
jne 0x1400358ad
or eax, 2
and r15d, 0xfffffffd
mov dword [rsp + 0x60], eax
jmp 0x1400361ad
lea rdx, str.saved
mov rcx, rdi
call fcn.1400fc014
cmp eax, ebx
jne 0x140035fbd
cmp rsi, 4
jne 0x1400358ad
bts dword [rsp + 0x60], 0x10
btr r15d, 0x10
or qword [rsp + 0x58], 8
jmp 0x1400361ad
cmp rsi, rbp
jne 0x1400358ad
lea rdx, [0x14011a89c]
mov rcx, rdi
call fcn.1400fc014
cmp eax, ebx
jne 0x140036010
test r15d, 0xf000
mov edx, ebx
mov ecx, ebx
setne dl
mov eax, r15d
and eax, 0xf00
cmp eax, 0x300
setne cl
or edx, ecx
jne 0x1400358ad
mov dword [rsp + 0x90], ebp
bts r15d, 0xd
jmp 0x1400361ad
lea rdx, str.comm
mov rcx, rdi
call fcn.1400fc014
cmp eax, ebx
jne 0x14003605a
test r15d, 0xf000
mov edx, ebx
mov ecx, ebx
setne dl
mov eax, r15d
and eax, 0xf00
cmp eax, 0x300
setne cl
or edx, ecx
jne 0x1400358ad
mov dword [rsp + 0x90], ebp
bts r15d, 0xc
jmp 0x1400361ad
lea rdx, [0x14011a888]
mov rcx, rdi
call fcn.1400fc014
cmp eax, ebx
jne 0x14003609f
test r15d, 0xf000
mov edx, ebx
mov ecx, ebx
setne dl
mov eax, r15d
and eax, 0xf00
cmp eax, 0x300
setne cl
or edx, ecx
jne 0x1400358ad
or r15d, 0x3000
jmp 0x1400361ad
lea rdx, [0x14011a880]
mov rcx, rdi
call fcn.1400fc014
cmp eax, ebx
jne 0x1400360ef
mov eax, ebx
mov edx, ebx
mov ecx, r15d
and ecx, 0xf00
cmp ecx, 0x100
setne dl
cmp ecx, ebx
setne al
and edx, eax
test r15d, 0xf000
mov eax, ebx
setne al
or edx, eax
jne 0x1400358ad
or r15d, 0x1100
jmp 0x1400361ad
lea rdx, [0x14011a878]
mov rcx, rdi
call fcn.1400fc014
cmp eax, ebx
jne 0x14003613c
mov eax, ebx
mov edx, ebx
mov ecx, r15d
and ecx, 0xf00
cmp ecx, 0x100
setne dl
cmp ecx, ebx
setne al
and edx, eax
test r15d, 0xf000
mov eax, ebx
setne al
or edx, eax
jne 0x1400358ad
or r15d, 0x2100
jmp 0x1400361ad
lea rdx, str.shared
mov rcx, rdi
call fcn.1400fc014
cmp eax, ebx
jne 0x140036156
bts r15d, 0x11
jmp 0x1400361ad
test r15b, 0xf0
jne 0x1400358ad
lea rdx, [0x14011a85c]
mov rcx, rdi
call fcn.1400fc014
cmp eax, ebx
jne 0x140036179
or r15d, 0x10
jmp 0x1400361ad
lea rdx, [0x14011a854]
mov rcx, rdi
call fcn.1400fc014
cmp eax, ebx
jne 0x140036192
or r15d, 0x20
jmp 0x1400361ad
lea rdx, [0x14011a84c]
mov rcx, rdi
call fcn.1400fc014
cmp eax, ebx
jne 0x1400358ad
or r15d, 0x30
lea rdx, [0x140116a24]
xor ecx, ecx
call fcn.1400fc424
mov rdi, rax
cmp rax, rbx
jne 0x140035ecf
mov edi, dword [rsp + 0x250]
mov esi, dword [rsp + 0x70]
jmp 0x1400363f7
mov dword [rsp + 0xa8], ebp
jmp 0x1400363f9
test r15d, 0xf00
mov eax, ebx
mov ecx, ebx
setne cl
cmp r13d, ebp
setne al
or ecx, eax
cmp edi, r10d
mov eax, ebx
setl al
or ecx, eax
jne 0x1400358ad
add r14, 8
lea rdx, [0x14011a840]
mov rcx, qword [r14]
call fcn.1400fc014
cmp eax, ebx
jne 0x14003622a
bts r15d, 8
jmp 0x1400363f7
mov rcx, qword [r14]
lea rdx, [0x14011a834]
call fcn.1400fc014
cmp eax, ebx
jne 0x140036247
bts r15d, 9
jmp 0x1400363f7
mov rcx, qword [r14]
lea rdx, str.proxy
call fcn.1400fc014
cmp eax, ebx
jne 0x1400358ad
or r15d, 0x300
jmp 0x1400363f7
sub edx, 0x75
je 0x140036396
sub edx, ebp
je 0x140036334
sub edx, r10d
je 0x1400362de
cmp edx, ebp
jne 0x1400358ad
cmp dword [rsp + 0x84], ebx
mov eax, ebx
mov ecx, ebx
setne cl
cmp r13d, ebp
setne al
or ecx, eax
cmp edi, r10d
mov eax, ebx
setl al
or ecx, eax
jne 0x1400358ad
add r14, 8
mov rax, qword [r14]
movzx ecx, word [rax]
call fcn.1400fc80c
cmp eax, ebx
je 0x1400358ad
mov rcx, qword [r14]
xor r8d, r8d
xor edx, edx
call fcn.1400fc748
mov dword [rsp + 0x84], eax
jmp 0x1400363f7
cmp dword [rsp + 0x88], ebx
mov eax, ebx
mov ecx, ebx
setne cl
cmp r13d, ebp
setne al
or ecx, eax
cmp edi, r10d
mov eax, ebx
setl al
or ecx, eax
jne 0x1400358ad
add r14, 8
mov rax, qword [r14]
movzx ecx, word [rax]
call fcn.1400fc80c
cmp eax, ebx
je 0x1400358ad
mov rcx, qword [r14]
xor r8d, r8d
xor edx, edx
call fcn.1400fc748
mov dword [rsp + 0x88], eax
jmp 0x1400363f7
cmp byte [rsp + 0x268], bl
mov eax, ebx
mov ecx, ebx
setne cl
cmp r13d, ebp
setne al
or ecx, eax
cmp edi, r10d
mov eax, ebx
setl al
or ecx, eax
jne 0x1400358ad
add r14, 8
mov ecx, ebx
mov eax, ebx
mov rdx, qword [r14]
cmp word [rdx], 0x38
seta cl
cmp word [rdx], 0x31
setb al
or ecx, eax
jne 0x1400358ad
cmp word [rdx + 2], bx
jne 0x1400358ad
mov r9b, byte [rdx]
sub r9b, 0x30
mov byte [rsp + 0x268], r9b
jmp 0x1400363f7
cmp r12, rbx
mov eax, ebx
mov ecx, ebx
setne cl
cmp r13d, 4
setne al
and ecx, eax
cmp r13d, ebp
mov eax, ebx
setne al
and ecx, eax
cmp esi, 0xffffffff
mov eax, ebx
setne al
or ecx, eax
cmp edi, r10d
mov eax, ebx
setl al
or ecx, eax
jne 0x1400358ad
add r14, 8
mov rax, qword [r14]
movzx ecx, word [rax]
call fcn.1400fc80c
cmp eax, ebx
je 0x1400358ad
mov rcx, qword [r14]
xor r8d, r8d
xor edx, edx
call fcn.1400fc748
mov esi, eax
mov dword [rsp + 0x70], eax
sub edi, ebp
mov rcx, qword [rsp + 0x58]
mov r8d, dword [rsp + 0x50]
cmp edi, ebp
jg 0x1400358bc
cmp r13d, 5
jne 0x140036448
mov rax, rcx
shr rax, 2
not eax
and eax, ebp
test bpl, cl
cmovne r8d, ebp
cmp r12, rbx
je 0x1400358ad
cmp word [r12], bx
je 0x1400358ad
movzx ecx, word [r12]
mov edx, eax
call fcn.14001c588
jmp 0x1400358ad
mov edx, dword [rsp + 0x60]
mov r9d, dword [rsp + 0x94]
sub r13d, ebp
movzx esi, bx
je 0x1400365a9
sub r13d, ebp
je 0x140036564
sub r13d, ebp
je 0x140036500
cmp r13d, ebp
jne 0x1400358ad
mov edi, dword [rsp + 0x70]
mov ecx, ebx
mov eax, ebx
cmp edi, 0xffffffff
sete cl
cmp r12, rbx
sete al
test eax, ecx
jne 0x1400358ad
cmp edx, ebx
jne 0x1400364a0
cmp r12, rbx
je 0x1400364b5
mov r8d, edx
mov r9d, r15d
mov ecx, edi
mov rdx, r12
call fcn.14001ce7c
mov r14d, eax
jmp 0x1400364b8
mov r14d, ebx
mov r8, qword [rsp + 0x78]
cmp r8, rbx
jle 0x1400364cf
mov rdx, r12
mov ecx, edi
call fcn.14001d174
mov r14d, eax
cmp r14d, ebx
jne 0x140036876
mov rax, qword [rsp + 0xb0]
cmp rax, rbx
je 0x140036876
mov r8, rax
mov rdx, r12
mov ecx, edi
call fcn.1400276d0
mov r13, qword [rsp + 0x58]
jmp 0x14003675d
mov rsi, qword [rsp + 0x260]
lea rdx, [0x140116c50]
mov rcx, rsi
call fcn.14006d65c
mov edi, dword [rsp + 0x70]
mov r11d, ebx
cmp edi, 0xffffffff
sete r11b
cmp r12, rbx
sete bl
test ebx, r11d
je 0x14003654d
movzx r8d, word [rsp + 0xc0]
mov ecx, dword [rsp + 0xa8]
mov rdx, rsi
call fcn.14001c7d8
jmp 0x140036879
mov r9, qword [rsp + 0x58]
mov r8, rsi
mov rdx, r12
mov ecx, edi
call fcn.14001ca00
jmp 0x140036879
mov r9d, dword [rsp + 0xc4]
mov edi, dword [rsp + 0x70]
cmp r12, rbx
mov eax, ebx
sete al
or eax, r9d
cmp edi, 0xffffffff
sete bl
test ebx, eax
jne 0x1400358ad
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], r8d
mov r8d, dword [rsp + 0x98]
mov rdx, r12
mov ecx, edi
call fcn.140027ab4
jmp 0x140036879
mov r14, qword [rsp + 0xb8]
cmp r9d, ebx
je 0x1400365cd
cmp r14, rbx
je 0x1400358ad
lea rdx, [rsp + 0x68]
mov rcx, r14
call qword [0x140135070]
lea r8, [0x1401155d8]
lea rdx, str.CurRamDisk
lea rcx, [0x1401350d0]
call fcn.140060abc
mov al, byte [rsp + 0x268]
cmp al, bl
je 0x140036654
mov edx, dword [rsp + 0x8c]
movzx edi, al
lea r9, [rsp + 0x110]
lea r8, [rsp + 0x68]
mov rcx, r14
shl rdi, 5
call qword [0x140135078]
cmp eax, ebx
jne 0x140036624
mov eax, 0xc
jmp 0x140036879
mov rdx, qword [rsp + rdi + 0xf0]
mov ecx, ebx
mov eax, ebx
cmp rdx, rbx
sete cl
cmp qword [rsp + rdi + 0xf8], rbx
sete al
or ecx, eax
jne 0x14003661a
add qword [rsp + 0x68], rdx
mov rax, qword [rsp + rdi + 0xf8]
jmp 0x1400366ce
cmp dword [rsp + 0x94], ebx
je 0x1400366d3
mov edx, dword [rsp + 0x8c]
lea r9, [rsp + 0x110]
lea r8, [rsp + 0x68]
mov rcx, r14
call qword [0x140135078]
cmp eax, ebx
je 0x1400366d3
lea rdx, [rsp + 0x110]
mov al, byte [rdx + 0x18]
cmp al, 5
je 0x140036694
mov r8d, ebp
cmp al, 0xf
jne 0x140036697
mov r8d, ebx
cmp qword [rdx + 8], rbx
mov ecx, ebx
mov eax, ebx
setne cl
cmp qword [rdx], rbx
setne al
and ecx, eax
test r8d, ecx
jne 0x1400366c2
lea rax, [rsp + 0x210]
add rdx, 0x20
cmp rdx, rax
jb 0x140036686
jmp 0x1400366d3
mov rax, qword [rdx]
add qword [rsp + 0x68], rax
mov rax, qword [rdx + 8]
mov qword [rsp + 0x78], rax
lea rcx, [0x140136118]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp r12, rbx
je 0x140036706
lea rdx, [0x14011a804]
mov rcx, r12
call fcn.1400fc014
cmp eax, ebx
jne 0x140036706
call qword [0x140135050]
mov si, ax
mov word [r12], ax
mov rax, qword [rsp + 0xb0]
mov r13, qword [rsp + 0x58]
lea r8, [rsp + 0x68]
mov dword [rsp + 0x40], r13d
mov qword [rsp + 0x38], rax
mov eax, dword [rsp + 0x90]
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], eax
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x70]
mov r9d, r15d
mov qword [rsp + 0x20], r14
call fcn.140035080
lea rcx, [0x140136118]
mov r14d, eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov edi, dword [rsp + 0x70]
cmp r12, rbx
je 0x1400367d3
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, 2
jne 0x140036779
cmp word [r12 + 2], 0x3a
jmp 0x14003679a
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, 3
jne 0x1400367a1
lea rcx, [r12 + 2]
lea rdx, [0x140118950]
call fcn.1400fc014
cmp eax, ebx
mov ecx, ebx
sete cl
jmp 0x1400367a3
mov ecx, ebx
cmp ecx, ebx
je 0x1400367d3
lea rdx, str.CurRamDisk
lea rcx, [0x1401350d0]
mov r8, r12
call fcn.140060abc
test bpl, r13b
jne 0x1400367d3
movzx ecx, word [r12]
mov r8d, dword [rsp + 0x50]
mov edx, ebp
call fcn.14001c588
cmp si, bx
je 0x140036828
cmp dword [rsp + 0xa8], ebx
jne 0x140036828
lea rdx, [0x14011a800]
lea rcx, [rsp + 0xa0]
or r8, 0xffffffffffffffff
call fcn.14006d61c
mov rbx, qword [rsp + 0x260]
lea rdx, [rsp + 0xa0]
mov rcx, rbx
call fcn.14006d6a8
lea rcx, [rsp + 0xa0]
call fcn.1400591f8
mov r11, qword [rbx]
mov word [r11 + 2], si
jmp 0x140036876
mov rbp, qword [rsp + 0x260]
mov edx, 0x42
mov rcx, rbp
call fcn.140061798
mov r11, qword [rbp]
mov eax, 0x2a
mov word [r11], ax
cmp si, bx
je 0x14003685a
cmp edi, ebx
lea rdx, str._d__c:
jge 0x140036861
lea rdx, [0x140116008]
mov rcx, qword [rbp]
movzx r9d, si
mov r8d, edi
add rcx, 2
call qword [sym.imp.USER32.dll_wsprintfW]
mov eax, r14d
mov rbx, qword [rsp + 0x258]
add rsp, 0x210
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret