Function at 0x1400094e0
Capabilities:
Query environment variable

Disassembly:
mov dword [rsp + 8], ecx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xc8]
sub rsp, 0x1c8
movsxd rsi, ecx
mov rdi, rdx
lea rcx, [0x140029a80]
call qword [sym.imp.KERNEL32.dll_GetStartupInfoA]
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
xor r9d, r9d
xor edx, edx
mov rcx, rax
lea r8d, [r9 + 4]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_setvbuf]
xor r12d, r12d
mov qword [rsp + 0x70], 0xffffffffffffffff
xorps xmm0, xmm0
mov qword [rbp + 0x50], 0xffffffffffffffff
xorps xmm1, xmm1
mov qword [rbp - 0x20], 0xffffffffffffffff
lea rax, [rsp + 0x40]
mov dword [0x1400271dc], r12d
mov qword [rsp + 0x40], rax
lea rcx, str.XDELTA
lea rax, [rsp + 0x40]
mov dword [0x1400288e8], r12d
mov qword [rsp + 0x48], rax
movups xmmword [rsp + 0x78], xmm0
mov dword [0x1400288c4], r12d
movups xmmword [rbp - 0x78], xmm0
mov dword [0x140027a7c], r12d
movups xmmword [rbp - 0x68], xmm0
mov qword [0x140027a88], r12
movups xmmword [rbp - 0x58], xmm0
mov dword [0x14002713c], 1
movups xmmword [rbp - 0x48], xmm0
mov qword [0x140027a80], r12
movups xmmword [rbp - 0x38], xmm0
mov dword [0x1400288d4], r12d
movups xmmword [rbp + 0x58], xmm0
mov dword [0x1400288f0], r12d
movups xmmword [rbp + 0x68], xmm0
mov qword [0x140029a70], r12
movups xmmword [rbp + 0x78], xmm0
mov qword [0x140028458], r12
movups xmmword [rbp + 0x88], xmm0
mov qword [0x140029a68], r12
movups xmmword [rbp + 0x98], xmm0
mov dword [0x140028454], r12d
movups xmmword [rbp + 0xa8], xmm0
mov dword [0x140029a60], r12d
movups xmmword [rbp - 0x18], xmm1
mov qword [0x140028958], r12
movups xmmword [rbp - 8], xmm1
mov dword [0x1400271d8], r12d
movups xmmword [rbp + 8], xmm1
mov qword [0x140027a70], r12
movups xmmword [rbp + 0x18], xmm1
mov dword [0x1400288f4], r12d
movups xmmword [rbp + 0x28], xmm1
mov dword [0x1400288c0], r12d
movups xmmword [rbp + 0x38], xmm1
mov dword [0x1400288d0], r12d
mov dword [0x1400288ec], r12d
mov dword [0x140027048], 1
mov dword [0x140027040], 1
mov dword [0x140027134], 1
mov dword [0x140027044], 3
mov dword [0x140027130], 0x8000
mov dword [0x140027138], 0x800000
mov qword [0x140027140], 0x4000000
mov dword [0x14002704c], 0x40000
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
mov rbx, rax
test rax, rax
jne 0x1400096cc
xor r8d, r8d
mov r13, rdi
mov qword [rbp + 0x120], r8
mov qword [rbp + 0x128], r8
jmp 0x14000981c
mov rax, 0xffffffffffffffff
cmp byte [rbx + rax + 1], r12b
lea rax, [rax + 1]
jne 0x1400096d3
lea ecx, [rax + 1]
call fcn.1400107a0
mov rdx, rax
mov qword [rbp + 0x128], rax
sub rdx, rbx
mov r15, rax
nop word [rax + rax]
movzx ecx, byte [rbx]
mov byte [rbx + rdx], cl
lea rbx, [rbx + 1]
test cl, cl
jne 0x140009700
movzx ecx, byte [rax]
lea ebx, [rsi + 1]
mov rdx, r15
test cl, cl
je 0x140009737
nop dword [rax + rax]
cmp cl, 0x20
lea eax, [rbx + 1]
movzx ecx, byte [rdx + 1]
lea rdx, [rdx + 1]
cmovne eax, ebx
mov ebx, eax
test cl, cl
jne 0x140009720
lea eax, [rbx + 1]
movsxd rcx, eax
shl rcx, 3
call fcn.1400107a0
mov rcx, qword [rdi]
mov r10, rax
mov qword [rbp + 0x120], rax
mov r13, rax
mov r8d, 1
mov qword [rax], rcx
movsxd rcx, ebx
mov qword [rax + rcx*8], r12
mov rcx, r15
cmp byte [r15], r12b
je 0x1400097c1
lea r9, [rax + 8]
nop dword [rax]
nop word [rax + rax]
mov qword [r9], rcx
lea r9, [r9 + 8]
movzx eax, byte [rcx]
inc r8d
cmp al, 0x20
je 0x1400097b0
movzx edx, al
movzx eax, dl
test dl, dl
je 0x1400097a9
movzx eax, byte [rcx + 1]
inc rcx
movzx edx, al
cmp al, 0x20
jne 0x140009794
cmp al, 0x20
jne 0x1400097bd
nop dword [rax]
mov byte [rcx], r12b
inc rcx
movzx eax, byte [rcx]
cmp al, 0x20
je 0x1400097b0
test al, al
jne 0x140009780
cmp rsi, 1
jle 0x1400097f3
movsxd rax, r8d
mov ecx, 1
dec r8d
add r8d, esi
lea rdx, [r10 + rax*8]
nop dword [rax]
mov rax, qword [rdi + rcx*8]
inc rcx
mov qword [rdx], rax
lea rdx, [rdx + 8]
cmp rcx, rsi
jl 0x1400097e0
mov dword [rbp + 0x110], r8d
cmp r8d, ebx
jg 0x140009819
sub ebx, r8d
movsxd rax, r8d
inc ebx
xor edx, edx
movsxd r8, ebx
shl r8, 3
lea rcx, [r10 + rax*8]
call sub.VCRUNTIME140.dll_memset
xor r8d, r8d
mov r14d, r8d
mov qword [rbp + 0x118], r8
mov r12d, 1
mov edx, 0x80000000
lea rdi, str.merge
mov ebx, 7
lea r15, str.test
lea r11, str.config
lea r10, str.encode
lea r9, str.decode
nop dword [rax]
movsxd rax, r12d
mov rsi, qword [r13 + rax*8]
test rsi, rsi
je 0x1400099f0
cmp byte [rsi], 0x2d
jne 0x14000987e
inc rsi
jmp 0x1400099f0
test r14d, r14d
jne 0x1400099e0
mov rcx, r8
nop word [rax + rax]
movzx eax, byte [rsi + rcx]
inc rcx
cmp al, byte [r9 + rcx - 1]
jne 0x1400098ae
cmp rcx, rbx
jne 0x140009890
mov r14d, 8
inc r12d
jmp 0x140009860
mov rcx, r8
movzx eax, byte [rsi + rcx]
inc rcx
cmp al, byte [r10 + rcx - 1]
jne 0x1400098cc
cmp rcx, rbx
jne 0x1400098b1
mov r14d, ebx
inc r12d
jmp 0x140009860
mov rcx, r8
nop
movzx eax, byte [rsi + rcx]
inc rcx
cmp al, byte [r11 + rcx - 1]
jne 0x1400098f1
cmp rcx, rbx
jne 0x1400098d0
mov r14d, 0xa
inc r12d
jmp 0x140009860
mov rcx, r8
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rsi + rcx]
inc rcx
cmp al, byte [r15 + rcx - 1]
jne 0x140009920
cmp rcx, 5
jne 0x140009900
lea r14d, [rcx + 4]
inc r12d
jmp 0x140009860
lea rdx, str.printhdr
mov rcx, rsi
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x14000993c
lea r14d, [rax + 1]
xor r8d, r8d
jmp 0x1400099b6
lea rdx, str.printhdrs
mov rcx, rsi
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x140009958
lea r14d, [rax + 2]
xor r8d, r8d
jmp 0x1400099b6
lea rdx, str.printdelta
mov rcx, rsi
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
xor r8d, r8d
test eax, eax
jne 0x140009974
lea r14d, [r8 + 3]
jmp 0x1400099b6
mov rcx, r8
lea rdx, str.recode
nop
movzx eax, byte [rsi + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x14000999a
cmp rcx, rbx
jne 0x140009980
mov r14d, 4
jmp 0x1400099b6
mov rcx, r8
nop dword [rax]
movzx eax, byte [rsi + rcx]
inc rcx
cmp al, byte [rdi + rcx - 1]
jne 0x1400099d8
cmp rcx, 6
jne 0x1400099a0
mov r14d, ecx
lea r9, str.decode
mov edx, 0x80000000
lea r10, str.encode
inc r12d
lea r11, str.config
jmp 0x140009860
mov r14d, ebx
mov edx, 0x80000000
mov rsi, r8
nop dword [rax]
nop word [rax + rax]
lea r15, str.write
test rsi, rsi
je 0x140009f00
movsx edi, byte [rsi]
mov rbx, r8
inc rsi
test edi, edi
je 0x140009d97
mov edx, edi
lea rcx, str.0123456789cdefhnqvDFJNORVs:m:B:C:E:I:L:O:M:P:W:A::S::
call qword [sym.imp.VCRUNTIME140.dll_strchr]
xor r8d, r8d
test rax, rax
je 0x140009a8f
cmp byte [rax + 1], 0x3a
jne 0x140009a8f
cmp byte [rax + 2], 0x3a
mov rbx, rsi
mov edx, r8d
lea rsi, [0x140020360]
sete dl
movzx eax, byte [rbx]
test al, al
jne 0x140009a7d
mov eax, dword [rbp + 0x110]
dec eax
cmp r12d, eax
jge 0x140009a70
movsxd rax, r12d
mov rcx, qword [r13 + rax*8 + 8]
cmp byte [rcx], 0x2d
je 0x140009a70
inc r12d
movsxd rax, r12d
mov rbx, qword [r13 + rax*8]
jmp 0x140009a8f
test edx, edx
je 0x140009d9f
mov rbx, r8
jmp 0x140009a8f
cmp al, 0x3d
jne 0x140009a8f
inc rbx
test edx, edx
je 0x140009a8f
cmp byte [rbx], r8b
cmove rbx, r8
lea edx, [rdi - 0x30]
cmp edx, 0x46
ja case.0x140009ab9.58
lea r9, [0x140000000]
movsxd rax, edx
movzx eax, byte [r9 + rax + 0xa4a8]
mov ecx, dword [r9 + rax*4 + 0xa448]
add rcx, r9
jmp rcx
mov dword [0x140027044], edx
mov ebx, 7
mov edx, 0x80000000
jmp 0x1400099f0
mov dword [0x1400288e8], 1
mov ebx, 7
mov edx, 0x80000000
jmp 0x1400099f0
lea rcx, str.xdelta3:_warning:__F_option_ignored__external_compression_support_was_not_compiled_n
call fcn.140010bb0
jmp 0x140009d85
inc dword [0x1400288c4]
mov dword [0x140027a7c], r8d
jmp 0x140009d88
mov dword [0x140027a7c], 1
mov dword [0x1400288c4], r8d
jmp 0x140009d88
mov dword [0x1400271dc], 1
jmp 0x140009d88
test r14d, r14d
jne case.0x140009ab9.58
lea ebx, [r14 + 7]
mov edx, 0x80000000
lea r14d, [rbx + 1]
jmp 0x1400099f0
test r14d, r14d
jne case.0x140009ab9.58
mov ebx, 7
mov edx, 0x80000000
mov r14d, ebx
jmp 0x1400099f0
mov dword [0x140027040], r8d
jmp 0x140009d88
mov dword [0x1400288d4], 1
jmp 0x140009d88
mov qword [0x140028958], rbx
jmp 0x140009d88
mov dword [0x1400288f0], 1
jmp 0x140009d88
mov eax, r8d
mov qword [0x140027a80], rbx
test rbx, rbx
setne al
mov dword [0x14002713c], eax
jmp 0x140009d88
test rbx, rbx
jne 0x140009bc9
mov dword [0x140027048], r8d
jmp 0x140009d88
mov qword [0x140027a88], rbx
jmp 0x140009d88
xor r8d, r8d
lea rdx, [rsp + 0x50]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__strtoi64]
test rax, rax
js 0x140009de3
mov rcx, qword [rsp + 0x50]
cmp byte [rcx], 0
jne 0x140009dda
cmp rax, 0x80000
jb 0x140009dcb
mov edx, 0x80000000
cmp rax, rdx
ja 0x140009dbf
xor r8d, r8d
mov qword [0x140027140], rax
lea ebx, [r8 + 7]
jmp 0x1400099f0
xor r8d, r8d
lea rdx, [rsp + 0x58]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__strtoi64]
test rax, rax
js 0x140009e0d
mov rcx, qword [rsp + 0x58]
cmp byte [rcx], 0
jne 0x140009e04
mov dword [0x140027130], eax
jmp 0x140009d85
xor r8d, r8d
lea rdx, [rsp + 0x60]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__strtoi64]
test rax, rax
js 0x140009e37
mov rcx, qword [rsp + 0x60]
cmp byte [rcx], 0
jne 0x140009e2e
mov dword [0x14002704c], eax
jmp 0x140009d85
xor r8d, r8d
lea rdx, [rsp + 0x68]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__strtoi64]
test rax, rax
js 0x140009e7f
mov rcx, qword [rsp + 0x68]
cmp byte [rcx], 0
jne 0x140009e76
cmp rax, 0x4000
jb 0x140009e67
cmp rax, 0x1000000
ja 0x140009e58
mov dword [0x140027138], eax
jmp 0x140009d85
cmp dword [0x1400288c4], 0
mov ebx, 7
mov edx, 0x80000000
jle 0x1400099f0
lea rcx, str.xdelta3:_warning:__D_option_ignored__external_compression_support_was_not_compiled_n
call fcn.140010bb0
xor r8d, r8d
mov edx, 0x80000000
jmp 0x1400099f0
cmp dword [0x1400288c4], 0
mov ebx, 7
mov edx, 0x80000000
jle 0x1400099f0
lea rcx, str.xdelta3:_warning:__R_option_ignored__external_compression_support_was_not_compiled_n
call fcn.140010bb0
xor r8d, r8d
mov edx, 0x80000000
jmp 0x1400099f0
cmp qword [rbp + 0x118], 0
jne 0x140009ea0
mov qword [rbp + 0x118], rbx
jmp 0x140009d88
mov ecx, 0x18
call fcn.1400107a0
test rax, rax
je 0x140009eac
mov rcx, qword [rsp + 0x48]
lea rdx, [rax + 8]
mov qword [rsp + 0x48], rdx
lea r8, [rsp + 0x40]
mov qword [rcx], rdx
mov qword [rdx], r8
mov qword [rdx + 8], rcx
mov qword [rax], rbx
xor r8d, r8d
mov ebx, 7
mov edx, 0x80000000
jmp 0x1400099f0
inc r12d
jmp 0x140009831
mov edx, edi
lea rcx, str.xdelta3:___c:_requires_an_argument_n
call fcn.140010bb0
jmp 0x140009eac
call fcn.140009200
xor r12d, r12d
jmp 0x14000a0e7
mov r8, rdx
lea rcx, str.xdelta3:___c:_maximum_value:__I64u_n
jmp 0x140009ded
mov r8d, 0x80000
lea rcx, str.xdelta3:___c:_minimum_value:__I64u_n
jmp 0x140009ded
lea rcx, str.xdelta3:___c:_invalid_integer:__s_n
jmp 0x140009dea
lea rcx, str.xdelta3:___c:_negative_integer:__s_n
mov r8, rbx
mov edx, 0x42
call fcn.140010bb0
xor r12d, r12d
mov ebx, 1
jmp 0x14000a0e9
lea rcx, str.xdelta3:___c:_invalid_integer:__s_n
jmp 0x140009e14
lea rcx, str.xdelta3:___c:_negative_integer:__s_n
mov r8, rbx
mov edx, 0x49
call fcn.140010bb0
xor r12d, r12d
mov ebx, 1
jmp 0x14000a0e9
lea rcx, str.xdelta3:___c:_invalid_integer:__s_n
jmp 0x140009e3e
lea rcx, str.xdelta3:___c:_negative_integer:__s_n
mov r8, rbx
mov edx, 0x50
call fcn.140010bb0
xor r12d, r12d
mov ebx, 1
jmp 0x14000a0e9
mov r8d, 0x1000000
lea rcx, str.xdelta3:___c:_maximum_value:__I64u_n
jmp 0x140009e89
mov r8d, 0x4000
lea rcx, str.xdelta3:___c:_minimum_value:__I64u_n
jmp 0x140009e89
lea rcx, str.xdelta3:___c:_invalid_integer:__s_n
jmp 0x140009e86
lea rcx, str.xdelta3:___c:_negative_integer:__s_n
mov r8, rbx
mov edx, 0x57
call fcn.140010bb0
xor r12d, r12d
mov ebx, 1
jmp 0x14000a0e9
lea rcx, str.xdelta3:_specify_only_one_source_file_n
call fcn.140010bb0
xor r12d, r12d
mov edi, 0xffffbad2
lea rsi, str.read
mov ebx, 1
jmp 0x14000a0f5
lea rcx, str.Xdelta_version_3.0.12__Copyright__C__Joshua_MacDonald_n
call fcn.140010bb0
lea rcx, str.Xdelta_comes_with_ABSOLUTELY_NO_WARRANTY._n
call fcn.140010bb0
lea rcx, str.Licensed_under_the_Apache_License__Version_2.0_n
call fcn.140010bb0
lea rcx, str.See__LICENSE__for_details._n
call fcn.140010bb0
xor r12d, r12d
mov ebx, r12d
jmp 0x14000a0e9
mov esi, dword [rbp + 0x110]
test r14d, r14d
mov rcx, qword [rbp + 0x118]
cmove r14d, ebx
movsxd rax, r12d
sub esi, r12d
mov qword [0x140029a70], rcx
lea rdi, [rax*8]
add rdi, r13
cmp esi, 2
jle 0x140009f46
mov rdx, qword [rdi + 0x10]
lea rcx, str.xdelta3:_too_many_filenames:__s_..._n
call fcn.140010bb0
jmp 0x140009eac
mov dword [rbp - 0x60], 9
mov dword [rbp + 0x10], 1
mov qword [rbp - 0x10], rcx
test esi, esi
jle 0x14000a053
mov rbx, qword [rdi]
mov qword [rbp - 0x80], rbx
mov dword [rsp + 0x78], r8d
cmp byte [rbx], 0
jne 0x140009f7d
lea rcx, str.xdelta3:_invalid_file_name:_empty_string_n
jmp 0x140009ea7
mov qword [rsp + 0x30], r8
xor r9d, r9d
mov dword [rsp + 0x28], 0x80
mov rcx, rbx
mov dword [rsp + 0x20], 3
lea r8d, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov qword [rsp + 0x70], rax
cmp rax, 0xffffffffffffffff
jne 0x14000a00c
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
mov edi, 0xffffbad2
cmove eax, edi
cmp dword [0x140027a7c], 0
jne 0x14000a0a7
mov ecx, eax
call fcn.140010560
cmp dword [rsp + 0x78], 0
lea rsi, str.read
mov r8, r15
mov qword [rsp + 0x20], rax
cmove r8, rsi
lea rdx, str.open
mov r9, rbx
lea rcx, str.xdelta3:_file__s_failed:__s:__s:__s_n
call fcn.140010bb0
xor r12d, r12d
lea ebx, [r12 + 1]
jmp 0x14000a0f5
xor r12d, r12d
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x58], r12
cmp esi, 1
jle 0x14000a071
mov eax, dword [0x1400271dc]
test eax, eax
je 0x14000a049
cmp dword [0x140027a7c], r12d
jne 0x14000a045
mov rdx, qword [rdi + 8]
lea rcx, str.xdelta3:_warning:__c_option_overrides_output_filename:__s_n
call fcn.140010bb0
mov eax, dword [0x1400271dc]
test eax, eax
jne 0x14000a071
mov rax, qword [rdi + 8]
mov qword [rbp + 0x60], rax
jmp 0x14000a071
mov ecx, 0xfffffff6
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov qword [rsp + 0x70], rax
xor r12d, r12d
lea rax, str._stdin_
mov qword [rbp - 0x80], rax
cmp r14d, 6
jne 0x14000a089
lea rcx, [rsp + 0x40]
call fcn.14000c9e0
test eax, eax
jne 0x140009eaf
lea eax, [r14 - 1]
cmp eax, 9
ja case.0x14000a0a5.5
lea rdx, [0x140000000]
cdqe
mov ecx, dword [rdx + rax*4 + 0xa4f0]
add rcx, rdx
jmp rcx
xor r12d, r12d
lea rsi, str.read
lea ebx, [r12 + 1]
jmp 0x14000a0f5
lea r9, [rbp - 0x20]
mov ecx, r14d
lea r8, [rbp + 0x50]
lea rdx, [rsp + 0x70]
call fcn.14000a7d0
jmp 0x14000a0e7
call fcn.140010940
call fcn.140001cc0
jmp 0x14000a0e7
call fcn.140010940
jmp 0x14000a0e7
call fcn.140009200
mov ebx, eax
lea rsi, str.read
mov edi, 0xffffbad2
mov rcx, qword [rsp + 0x70]
cmp rcx, 0xffffffffffffffff
je 0x14000a167
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
jne 0x14000a15e
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp dword [0x140027a7c], 0
mov qword [rsp + 0x70], 0xffffffffffffffff
jne 0x14000a167
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
cmove eax, edi
mov ecx, eax
call fcn.140010560
cmp dword [rsp + 0x78], 0
lea rdx, str.close
mov r9, qword [rbp - 0x80]
lea rcx, str.xdelta3:_file__s_failed:__s:__s:__s_n
mov r8, r15
mov qword [rsp + 0x20], rax
cmove r8, rsi
call fcn.140010bb0
jmp 0x14000a167
mov qword [rsp + 0x70], 0xffffffffffffffff
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x14000a17a
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbp - 0x48], r12
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x14000a18d
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbp - 0x78], r12
mov rcx, qword [rbp + 0x50]
cmp rcx, 0xffffffffffffffff
je 0x14000a1fb
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
jne 0x14000a1f3
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp dword [0x140027a7c], 0
mov qword [rbp + 0x50], 0xffffffffffffffff
jne 0x14000a1fb
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
cmove eax, edi
mov ecx, eax
call fcn.140010560
cmp dword [rbp + 0x58], 0
lea rdx, str.close
mov r9, qword [rbp + 0x60]
lea rcx, str.xdelta3:_file__s_failed:__s:__s:__s_n
mov r8, r15
mov qword [rsp + 0x20], rax
cmove r8, rsi
call fcn.140010bb0
jmp 0x14000a1fb
mov qword [rbp + 0x50], 0xffffffffffffffff
mov rcx, qword [rbp + 0x98]
test rcx, rcx
je 0x14000a214
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbp + 0x98], r12
mov rcx, qword [rbp + 0x68]
test rcx, rcx
je 0x14000a227
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbp + 0x68], r12
mov rcx, qword [rbp - 0x20]
cmp rcx, 0xffffffffffffffff
je 0x14000a295
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
jne 0x14000a28d
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp dword [0x140027a7c], 0
mov qword [rbp - 0x20], 0xffffffffffffffff
jne 0x14000a295
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
cmove eax, edi
mov ecx, eax
call fcn.140010560
cmp dword [rbp - 0x18], 0
lea rdx, str.close
mov r9, qword [rbp - 0x10]
lea rcx, str.xdelta3:_file__s_failed:__s:__s:__s_n
cmove r15, rsi
mov qword [rsp + 0x20], rax
mov r8, r15
call fcn.140010bb0
jmp 0x14000a295
mov qword [rbp - 0x20], 0xffffffffffffffff
mov rcx, qword [rbp + 0x28]
test rcx, rcx
je 0x14000a2a8
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbp + 0x28], r12
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x14000a2bb
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbp - 8], r12
mov rdx, qword [rsp + 0x40]
lea rax, [rsp + 0x40]
cmp rax, rdx
je 0x14000a2fc
nop word [rax + rax]
mov rcx, qword [rdx + 8]
mov rax, qword [rdx]
mov qword [rax + 8], rcx
mov qword [rcx], rax
lea rcx, [rdx - 8]
test rcx, rcx
je 0x14000a2ed
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rdx, qword [rsp + 0x40]
lea rax, [rsp + 0x40]
cmp rax, rdx
jne 0x14000a2d0
mov rax, qword [rbp + 0x120]
test rax, rax
je 0x14000a311
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, qword [rbp + 0x128]
test rax, rax
je 0x14000a326
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, qword [0x140028458]
test rcx, rcx
je 0x14000a348
cmp rcx, qword [0x140027a88]
je 0x14000a348
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [0x140028458], r12
mov rcx, qword [0x140029a68]
xor edx, edx
mov r8d, 0x8000
call qword [sym.imp.KERNEL32.dll_VirtualFree]
mov rcx, qword [0x140027a70]
mov qword [0x140029a68], r12
mov dword [0x140028454], r12d
test rcx, rcx
je 0x14000a39a
mov rcx, qword [rcx]
xor edx, edx
mov r8d, 0x8000
call qword [sym.imp.KERNEL32.dll_VirtualFree]
mov rcx, qword [0x140027a70]
test rcx, rcx
je 0x14000a39a
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, qword [0x1400288c8]
mov qword [0x140027a70], r12
mov dword [0x1400288c0], r12d
mov dword [0x1400288d0], r12d
mov dword [0x1400288ec], r12d
test rcx, rcx
je 0x14000a3e0
call fcn.14001b9a0
mov rcx, qword [0x1400288c8]
test rcx, rcx
je 0x14000a3d9
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [0x1400288c8], r12
mov rcx, qword [0x140029a78]
test rcx, rcx
je 0x14000a40a
call fcn.14001b9a0
mov rcx, qword [0x140029a78]
test rcx, rcx
je 0x14000a403
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [0x140029a78], r12
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fflush]
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fflush]
mov eax, ebx
add rsp, 0x1c8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret