Function at 0x180028e20
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x90
lea r14d, [rdx + 0xe]
mov r15d, edx
mov dword [rbp + 0x6f], r14d
mov rbx, rcx
cmp edx, r14d
jae case.0x180028e8f.67
mov r12, qword [rbp + 0x7f]
mov r13, qword [rbp + 0x7f]
mov rsi, qword [rbp + 0x7f]
lea eax, [r15 - 0x41]
mov edi, 0x4000
lea rdx, [0x180000000]
cmp eax, 0x2b
ja case.0x180028e8f.78
movzx eax, byte [rdx + rax + 0x299b8]
mov ecx, dword [rdx + rax*4 + 0x29980]
add rcx, rdx
jmp rcx
mov rdi, qword [rbp - 0x19]
mov qword [0x1800b6d78], rdi
mov byte [0x1800b60eb], 1
jmp case.0x180028e8f.78
xor r9d, r9d
lea rdx, [0x1800b4f50]
mov r8d, 0x84
xor ecx, ecx
call fcn.18005d2b0
mov dword [rbp - 0x21], 0
jmp case.0x180028e8f.78
test rbx, rbx
jne case.0x180028e8f.78
cmp dword [0x1800b6138], 1
je case.0x180028e8f.78
lea r8, str.V_CMPX_GE_I64_e32_si
xor edx, edx
lea ecx, [rbx + 0x32]
call fcn.180041ba0
jmp case.0x180028e8f.78
cmp dword [0x1800b6138], 3
jne 0x180028f13
xor r8d, r8d
lea rdx, [0x1800b6140]
lea ecx, [r8 + 0x1b]
call fcn.18001bf10
mov ecx, dword [0x1800b6138]
sub ecx, 1
je 0x18002919a
sub ecx, 1
je 0x180028f42
cmp ecx, 1
je 0x180028f97
xor edx, edx
lea r8, str.SVGA3D_R8G8B8A8_SNORM
lea ecx, [rdx + 0x32]
call fcn.180041ba0
jmp 0x1800291d3
mov ebx, 0x125
nop word [rax + rax]
mov eax, ebx
sub eax, 0x123
je 0x180029094
sub eax, 1
je 0x180028f7f
cmp eax, 1
jne 0x180028f8d
lea rdx, [0x180099664]
lea rcx, [0x1800b6140]
call fcn.180071154
mov r12, rax
jmp 0x180028f8d
mov ecx, 1
call fcn.180070398
mov qword [rbp - 0x19], rax
dec ebx
cmp ebx, 0x122
ja 0x180028f50
mov ebx, 0xe4
nop dword [rax]
cmp ebx, 0xe4
je 0x18002904b
cmp ebx, 0x4740
jne 0x18002907d
mov rdi, qword [rbp - 0x19]
test rdi, rdi
je 0x1800297c3
test r12, r12
jne 0x1800291d3
call fcn.18006f084
mov ecx, dword [rax]
call fcn.18006f2e8
lea ecx, [r12 + 2]
mov rbx, rax
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea r9, [0x1800b6140]
mov rcx, rax
mov qword [rsp + 0x20], rbx
lea rdx, str.ERROR_EVT_MESSAGE_LOCALE_NOT_FOUND
call fcn.180069b10
mov rcx, rdi
call fcn.180070ca4
xor r9d, r9d
mov dword [rbp + 0x6f], 1
xor edx, edx
lea rcx, [rbp + 0x6f]
mov r8d, 0xd0
call fcn.180044270
mov rax, qword [rbp - 0x21]
mov rbx, qword [rsp + 0xe0]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rdx, [0x180099664]
lea rcx, [0x1800b6140]
call fcn.180071154
lea r8, [0x1800b6550]
mov ecx, 0x66
lea rdx, [0x18009980c]
mov r12, rax
call fcn.180031ed0
mov qword [rbp - 0x19], rax
add ebx, 0x465c
cmp ebx, 0x8cb8
jbe 0x180028fa0
jmp 0x180028f2c
mov ecx, 1
call fcn.180070398
mov rcx, rax
call fcn.180079a4c
mov ecx, eax
call fcn.180079a74
test eax, eax
je 0x180029155
mov ebx, 0x80
nop word [rax + rax]
mov eax, ebx
sub eax, 0x80
je 0x180029103
sub eax, 0x7c
je 0x1800290d9
cmp eax, 0x7c
je case.0x180028e8f.67
jmp 0x180029146
test r12, r12
je 0x1800290e6
mov rcx, r12
call fcn.180070ca4
xor r9d, r9d
mov dword [rbp + 0x7f], 1
xor edx, edx
lea rcx, [rbp + 0x7f]
mov r8d, 0xd0
call fcn.180044270
jmp 0x180029146
mov ecx, 2
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea rdx, str.policy::ComponentCloudPolicyService::ReloadSchema
mov rcx, rax
call fcn.180069b10
mov ecx, 2
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea rdx, str.op_Ethernet_SetConnectionType_in_
mov r9, r8
mov rcx, rax
call fcn.180069b10
add ebx, 0x7c
cmp ebx, 0x1f4
jb 0x1800290c0
test r12, r12
jne 0x1800291d3
call fcn.18006f084
mov ecx, dword [rax]
call fcn.18006f2e8
lea ecx, [r12 + 2]
mov rbx, rax
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea r9, [0x1800b6140]
mov rcx, rax
mov qword [rsp + 0x20], rbx
lea rdx, str.void_glFramebufferTextureLayerNV__
call fcn.180069b10
jmp 0x180029011
xor ecx, ecx
call fcn.180070398
mov ecx, 1
mov r12, rax
call fcn.180070398
mov ecx, 1
mov qword [rbp - 0x19], rax
call fcn.180070398
mov rcx, rax
call fcn.180079a4c
mov ecx, eax
call fcn.180079a74
test eax, eax
jne 0x18002980f
cmp dword [0x1800b60ec], 1
mov r15d, 0x62
jl case.0x180028e8f.78
lea ecx, [r15 - 0x60]
call fcn.180070398
mov rcx, rax
lea r8, [0x1800b6140]
lea rdx, str.___s:
call fcn.180069b10
lea edx, [r15 + 0xe]
lea rcx, [0x1800b6140]
call fcn.18003a740
lea ecx, [r15 - 0x60]
call fcn.180070398
mov rcx, rax
call fcn.180070ef0
jmp case.0x180028e8f.78
mov eax, dword [0x1800b6138]
add eax, 0xfffffffe
cmp eax, 1
ja 0x180029253
lea rdx, [rbp - 0x11]
lea rcx, [0x1800b6140]
call fcn.180070bc8
test word [rbp - 0xb], di
jne 0x180029857
cmp dword [0x1800b6138], 3
jne case.0x180028e8f.78
cmp byte [0x1800b6120], 0
jne case.0x180028e8f.78
lea r8, [0x1800b6140]
mov edx, 0x100
xor ecx, ecx
call fcn.18000a770
test al, al
je case.0x180028e8f.78
cmp byte [0x1800b6123], 0
je 0x180029011
mov ecx, 2
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea r9, [0x1800b6140]
mov rcx, rax
lea rdx, str.Log_directory_to_print_library_call_data
call fcn.180069b10
jmp 0x180029011
cmp dword [0x1800b6138], 3
jne case.0x180028e8f.78
lea rdx, [0x1800b6550]
mov ecx, 0x117
call fcn.18002cc60
test al, al
je 0x1800292fc
cmp byte [0x1800b6120], 0
je 0x180029883
lea rcx, [0x1800b6550]
call fcn.180071d20
cmp dword [0x1800b6138], 3
jne case.0x180028e8f.78
cmp byte [0x1800b6120], 0
jne case.0x180028e8f.78
xor r8d, r8d
lea rdx, [0x1800b6140]
mov ecx, 0xd0
call fcn.18000c6d0
mov edi, eax
test eax, eax
jle case.0x180028e8f.78
lea rax, [0x180099cc4]
cmp edi, 1
lea rbx, [0x180097450]
mov ecx, 2
cmovg rbx, rax
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea r9, [0x1800b6140]
mov rcx, rax
mov qword [rsp + 0x28], rbx
lea rdx, str.vim.fault.InsufficientHostCapacityFault
mov dword [rsp + 0x20], edi
call fcn.180069b10
jmp 0x180029011
movzx eax, byte [rbx + 1]
movzx ecx, byte [rbx]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 2]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 3]
shl ecx, 8
or ecx, eax
mov dword [rbp - 0x21], ecx
jmp case.0x180028e8f.78
mov rdx, qword [rbp - 0x19]
xor r9d, r9d
mov qword [rsp + 0x38], r12
xor r8d, r8d
mov qword [rsp + 0x30], 0
mov ecx, 0xd1
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
call fcn.180047f70
jmp case.0x180028e8f.78
cmp dword [0x1800b6138], 3
mov qword [0x1800b6d78], 0
jne case.0x180028e8f.68
mov edx, 0xb5
lea rcx, [0x1800b6550]
call fcn.180063800
cmp byte [0x1800b60e9], 0
mov byte [0x1800b60eb], 0
jne case.0x180028e8f.68
lea rcx, [0x1800b6140]
call fcn.180071d20
test eax, eax
je case.0x180028e8f.68
mov ebx, 0xab
cmp ebx, 0xb5
ja 0x1800294f2
je 0x18002952e
mov eax, ebx
sub eax, 0x43
je 0x1800294ee
sub eax, 0x5d
je 0x1800294bc
cmp eax, 0xb
jne 0x180029513
lea ecx, [rax - 9]
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea rdx, str.EwJJTDAeFw0wNDAzMjQxMTMyMThaFw0yOTAzMTkxNTAyMThaMDQxEzARBgNVBAMT
mov rcx, rax
call fcn.180069b10
mov rcx, qword [0x1800b6d70]
call fcn.18006fb90
xor r9d, r9d
mov dword [rsp + 0x20], 0x69
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.18003b330
xor r9d, r9d
mov dword [rbp + 0x7f], 1
xor edx, edx
lea rcx, [rbp + 0x7f]
mov r8d, 0x10a
call fcn.1800692d0
jmp 0x180029513
xor eax, eax
mov dword [rbp + 0x7f], 0x10
mov qword [rsp + 0x28], rax
lea r8, [rbp + 0x7f]
mov r9d, 0xf2
mov qword [rsp + 0x20], rax
xor edx, edx
xor ecx, ecx
call fcn.180039840
mov r13, rax
mov qword [rax], 0
jmp 0x180029513
xor esi, esi
jmp 0x180029513
mov eax, ebx
sub eax, 0x112
je 0x18002950b
sub eax, 0x15
je 0x18002954d
cmp eax, 0x5d
je case.0x180028e8f.68
jmp 0x180029513
mov qword [r13 + 8], 0
add ebx, 0x72
cmp ebx, 0x3c9
jb 0x180029433
mov byte [0x1800b60eb], 0
jmp case.0x180028e8f.78
test rsi, rsi
je case.0x180028e8f.68
mov dword [rsi + 0x13e8], 0xfffffffe
mov byte [0x1800b60eb], 0
jmp case.0x180028e8f.78
mov eax, dword [pe_dos_header]
mov dword [rsi + 0x13a0], eax
mov qword [rsi + 0x1398], 0
nop word [rax + rax]
mov edi, 0x2b
cmp edi, 0x2b
je 0x18002963d
cmp edi, 0x12d0
je 0x1800295b9
cmp edi, 0x2575
jne 0x180029652
cmp dword [rsi + 0x13a0], 0
jne 0x180029652
mov r14d, dword [rbp + 0x6f]
mov dword [rsi + 0x13e8], 0
mov byte [0x1800b60eb], 0
jmp case.0x180028e8f.78
mov dword [rsp + 0x28], 1
lea r9, [rsi + 0x1398]
xor r8d, r8d
mov qword [rsp + 0x20], 0
lea rdx, [rbp - 0x29]
mov dword [rbp - 0x29], 0
xor ecx, ecx
call fcn.18005ddc0
cmp eax, 1
jne 0x180029669
mov eax, dword [rsi + 0x13b8]
cmp eax, 0x1388
jae 0x180029652
mov r9, qword [rsi]
lea rcx, [rsi + 8]
mov ebx, 0x1388
mov edx, 1
sub ebx, eax
movsxd r8, ebx
call fcn.180071964
cmp ebx, eax
jne 0x180029623
mov rcx, qword [rsi]
call fcn.180070d10
test eax, eax
je 0x180029652
mov r14d, dword [rbp + 0x6f]
mov dword [rsi + 0x13e8], 0xfffffffa
mov byte [0x1800b60eb], 0
jmp case.0x180028e8f.78
lea rax, [rsi + 8]
mov dword [rsi + 0x13b8], 0x1388
mov qword [rsi + 0x13b0], rax
add edi, 0x12a5
cmp edi, 0x37ef
jbe 0x180029575
jmp 0x180029570
mov r14d, dword [rbp + 0x6f]
mov dword [rsi + 0x13e8], eax
mov byte [0x1800b60eb], 0
jmp case.0x180028e8f.78
mov ecx, dword [0x1800b6138]
sub ecx, 1
je 0x1800296f3
sub ecx, 1
je 0x1800296ee
cmp ecx, 1
jne 0x180029723
mov r8, rbx
lea rdx, [0x1800b6140]
mov ecx, 0x30
call fcn.18002a320
mov r8, rbx
lea rdx, [0x1800b6550]
mov ecx, 0x30
call fcn.18002a320
lea rcx, [0x1800b6550]
dec rcx
nop word [rax + rax]
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x1800296d0
mov eax, dword [str..bz2]
mov dword [rcx], eax
movzx eax, byte [0x1800974c8]
mov byte [rcx + 4], al
jmp 0x180029723
mov r8, rbx
jmp 0x1800296fa
lea r8, str._stdin_
lea rdx, [0x1800b6140]
mov ecx, 0x30
call fcn.18002a320
lea r8, str._stdout_
mov ecx, 0x30
lea rdx, [0x1800b6550]
call fcn.18002a320
cmp dword [0x1800b6138], 1
mov r15d, 0x5f
je 0x18002976e
xor edx, edx
lea r8d, [r15 + 0x65]
lea rcx, [0x1800b6140]
call fcn.18004e5d0
test al, al
jne 0x1800298ef
cmp dword [0x1800b6138], 1
je 0x18002976e
lea rdx, [0x1800b6140]
mov ecx, 0x117
call fcn.18002cc60
test al, al
je 0x1800298af
xor eax, eax
lea rbx, str..bz2
mov edi, eax
nop dword [rax]
mov r8, qword [rbx]
lea rcx, [0x1800b6140]
mov edx, 0x1f
call fcn.180026500
test al, al
jne 0x180029928
inc edi
lea rax, [0x1800b4c58]
add rbx, 8
cmp rbx, rax
jl 0x180029780
inc r15d
cmp r15d, r14d
jae case.0x180028e8f.67
mov rbx, qword [rbp + 0x67]
jmp 0x180028e64
call fcn.18006f084
mov ecx, dword [rax]
call fcn.18006f2e8
mov ecx, 2
mov rbx, rax
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea r9, [0x1800b6550]
mov rcx, rax
mov qword [rsp + 0x20], rbx
lea rdx, str.Executing_Global_Assembly_Cache_phase
call fcn.180069b10
test r12, r12
je 0x180029011
mov rcx, r12
jmp 0x18002900c
mov ecx, 2
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea rdx, str.Password_decryption_failed__encryption_result_is
mov rcx, rax
call fcn.180069b10
mov ecx, 2
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea rdx, str.Ssync_ANSI_UNICODE_Struct_For_WOW
mov r9, r8
mov rcx, rax
call fcn.180069b10
jmp 0x180029011
mov ecx, 2
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea r9, [0x1800b6140]
mov rcx, rax
lea rdx, str.Phx::Boolean_doTolerateError__0
call fcn.180069b10
jmp 0x180029011
mov ecx, 2
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea r9, [0x1800b6550]
mov rcx, rax
lea rdx, str.unmatched_do_break_cont_instruction
call fcn.180069b10
jmp 0x180029011
call fcn.18006f084
mov ecx, dword [rax]
call fcn.18006f2e8
mov ecx, 2
mov rbx, rax
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea r9, [0x1800b6140]
mov rcx, rax
mov qword [rsp + 0x20], rbx
lea rdx, str.VC_CL_Macros__CASA_HTTP_LISTENER_H
call fcn.180069b10
jmp 0x180029011
cmp byte [0x1800b6123], 0
je 0x180029011
mov ecx, 2
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea r9, [0x1800b6140]
mov rcx, rax
lea rdx, str.void_glTexParameterIuivEXT__s___s___s_
call fcn.180069b10
jmp 0x180029011
cmp byte [0x1800b6123], 0
je 0x180029011
mov ecx, 2
movsxd rbx, edi
call fcn.180070398
mov r8, qword [0x1800b6d70]
lea r9, [0x1800b6140]
mov rcx, rax
lea rdx, str._____msg.License.nem_Not_enough_memory
lea rax, str..bz2
mov rax, qword [rax + rbx*8]
mov qword [rsp + 0x20], rax
call fcn.180069b10
jmp 0x180029011
mov rax, qword [rbx + 8]
jmp 0x180029030