Function at 0x140019700
Capabilities:
Write file on windows

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x148
lea rbp, [rsp + 0x80]
mov r15d, edx
mov r12, rcx
lea rax, [rcx + 0x74]
mov qword [rbp - 0x10], rax
lea rax, [rcx + 0x68]
mov qword [rbp - 8], rax
lea rax, [rcx + 0x80]
mov qword [rbp], rax
mov eax, 0x2cefdda
mov esi, 0xe884d7dc
lea r13, [rbp - 0x80]
jmp 0x140019770
mov rax, qword [rbp + 8]
mov rax, qword [rbp + 0x10]
mov rax, qword [rbp + 0x18]
mov eax, 0xa5e75c60
mov ebx, dword [rbp + 0x98]
nop word cs:[rax + rax]
nop dword [rax]
cmp eax, 0x66eccb1
jle 0x140019810
cmp eax, 0x41d89d64
jg 0x140019860
cmp eax, 0x1e0d77a8
jg 0x14001991a
cmp eax, 0x121caeed
jg 0x140019a97
cmp eax, 0x721d7cc
jg 0x140019d49
cmp eax, 0x66eccb2
je 0x14001a0af
cmp eax, 0x681d1b7
jne 0x140019770
mov rax, qword [rbp + 0x78]
mov rcx, qword [rax + 0x40]
mov rcx, qword [rcx]
mov qword [rbp + 0xa0], rcx
mov rax, qword [rax + 0x58]
mov eax, dword [rax]
mov dword [rbp + 0x88], eax
mov ecx, 0x5feca36f
nop dword [rax]
cmp ecx, 0xc480a4c0
je 0x14001a0f4
cmp ecx, 0x5feca36f
jne 0x1400197e0
movsxd rax, dword [rbp + 0x88]
add rax, qword [rbp + 0xa0]
mov ecx, 0xc480a4c0
jmp 0x1400197e0
cmp eax, 0xc0009a2e
jle 0x1400198d0
cmp eax, 0xec4a176f
jg 0x140019961
cmp eax, 0xca6a990f
jg 0x140019ad3
cmp eax, 0xc7e72f89
jg 0x140019d70
cmp eax, 0xc0009a2f
je 0x14001a11a
cmp eax, 0xc236d04c
jne 0x140019770
mov dword [rbp + 0x38], r15d
mov eax, 0x86f7435f
jmp 0x140019770
cmp eax, 0x69df56ab
jg 0x1400199f0
cmp eax, 0x4c4d6552
jg 0x140019b09
cmp eax, 0x425e714d
jg 0x140019da0
cmp eax, 0x41d89d65
je 0x14001a124
cmp eax, 0x41fbd1c1
jne 0x140019770
mov rax, qword [rbp + 0x78]
add rax, 0x40
mov ecx, 0x83bcc0d8
nop word cs:[rax + rax]
nop
cmp ecx, 0x83bcc0d8
je 0x1400198c5
cmp ecx, 0xb9e284a0
jne 0x1400198b0
jmp 0x14001a139
mov ecx, 0xb9e284a0
jmp 0x1400198b0
cmp eax, 0xa9efda28
jle 0x140019a35
cmp eax, 0xb1fb6eca
jg 0x140019b38
cmp eax, 0xac045686
jg 0x140019e20
cmp eax, 0xa9efda29
je 0x14001a15f
cmp eax, 0xab8f0b7f
jne 0x140019770
mov eax, 0xf93b0a01
mov ecx, dword [rbp + 0x28]
mov dword [rbp + 0x98], ecx
jmp 0x140019770
cmp eax, 0x2a89f209
jg 0x140019b7a
cmp eax, 0x29298dd4
jg 0x140019e4d
cmp eax, 0x1e0d77a9
je 0x14001a178
cmp eax, 0x21af4e0f
jne 0x140019770
mov eax, dword [rbp + 0x94]
cmp eax, 2
mov eax, 0xc0009a2f
mov ecx, 0x884dc7d0
cmovb eax, ecx
jmp 0x140019770
cmp eax, 0xf93b0a00
jg 0x140019bae
cmp eax, 0xf4b11f77
jg 0x140019e73
cmp eax, 0xec4a1770
je 0x14001a189
cmp eax, 0xef038f1e
jne 0x140019770
mov rax, qword [rbp + 0x78]
mov ecx, 0xa4fa241e
nop word cs:[rax + rax]
cmp ecx, 0xadf023ce
je 0x14001a19f
cmp ecx, 0xa4fa241e
jne 0x1400199a0
mov rcx, qword [rax + 0x58]
add dword [rcx], 0xffffffff
mov rcx, qword [rax + 0x40]
mov qword [rbp + 0x88], rcx
mov rcx, qword [rbp + 0x88]
mov rcx, qword [rcx]
mov qword [rbp + 0xa0], rcx
mov rcx, qword [rbp + 0xa0]
add rcx, 1
mov qword [rbp + 0xb8], rcx
mov ecx, 0xadf023ce
jmp 0x1400199a0
cmp eax, 0x6e52bf8b
jg 0x140019be0
cmp eax, 0x6c447a09
jg 0x140019e96
cmp eax, 0x69df56ac
je 0x14001a1c9
cmp eax, 0x6acdb8f1
jne 0x140019770
cmp byte [rbp + 0xb2], 0
mov eax, 0x92e57f3f
mov ecx, 0x425e714e
cmovne eax, ecx
jmp 0x140019770
cmp eax, 0x92e57f3e
jg 0x140019c12
cmp eax, 0x86f7435e
jg 0x140019edc
cmp eax, 0x832a5e59
je 0x14001a1e2
cmp eax, 0x86a749ac
jne 0x140019770
mov rcx, qword [rbp + 0x68]
mov r8, qword [rbp + 0x50]
mov r9, qword [rbp - 0x48]
sub rsp, 0x20
mov edx, 1
call fcn.140033fcc
add rsp, 0x20
mov rcx, qword [rbp + 0x50]
cmp rcx, rax
setne byte [rbp + 0xb1]
mov eax, 0x65462bf9
jmp 0x140019770
cmp eax, 0x18f3d678
jg 0x140019f07
cmp eax, 0x121caeee
je 0x14001a1f5
cmp eax, 0x17f34de0
jne 0x140019770
mov eax, dword [rbp + 0x94]
cmp eax, 3
mov eax, 0xc0009a2f
mov ecx, 0x9de97ce5
cmove eax, ecx
jmp 0x140019770
cmp eax, 0xd893a21f
jg 0x140019f4a
cmp eax, 0xca6a9910
je 0x14001a20e
cmp eax, 0xd5abb111
jne 0x140019770
mov rax, qword [rbp + 0x70]
mov rax, qword [rax]
mov qword [rbp - 0x30], rax
mov eax, 0xb3a65572
jmp 0x140019770
cmp eax, 0x65462bf8
jg 0x140019f77
cmp eax, 0x4c4d6553
je 0x14001a23b
cmp eax, 0x4dd3a11f
jne 0x140019770
mov eax, 0x18f3d679
mov r14d, dword [rbp + 0x30]
jmp 0x140019770
cmp eax, 0xb3e9db2c
jg 0x140019fa0
cmp eax, 0xb1fb6ecb
je 0x14001a25a
cmp eax, 0xb3a65572
jne 0x140019770
mov eax, 0xc9627ced
nop
cmp eax, 0xc9627ced
je 0x140019b73
cmp eax, 0x7e412b39
jne 0x140019b60
jmp 0x14001a275
mov eax, 0x7e412b39
jmp 0x140019b60
cmp eax, 0x2dc0f4d1
jg 0x140019fc9
cmp eax, 0x2a89f20a
je 0x14001a2d7
cmp eax, 0x2d0203b5
jne 0x140019770
mov eax, 0x29cf69c6
mov ecx, dword [rbp + 0x44]
mov dword [rbp + 0x84], ecx
jmp 0x140019770
cmp eax, 0xfdc7ce0c
jg 0x140019fed
cmp eax, 0xf93b0a01
je 0x14001974c
cmp eax, 0xf9d62df8
jne 0x140019770
mov dword [rbp + 0x3c], 0xffffffff
mov eax, 0xb4fbeb76
jmp 0x140019770
cmp eax, 0x6f6b8b9f
jg 0x14001a067
cmp eax, 0x6e52bf8c
je 0x14001a2f0
cmp eax, 0x6eb0c567
jne 0x140019770
mov dword [rbp + 0x48], 0xffffffff
mov eax, 0xf4b11f78
jmp 0x140019770
cmp eax, 0x9de97ce4
jg 0x14001a08f
cmp eax, 0x92e57f3f
je 0x14001a2fd
cmp eax, 0x9805475f
jne 0x140019770
mov ecx, 0x91188285
jmp 0x140019c50
movzx eax, byte [rbp + 0x88]
xor eax, 1
mov ecx, 0x2ae52dfd
nop dword [rax]
cmp ecx, 0xb402a532
jg 0x140019c90
cmp ecx, 0xafbab20f
jg 0x140019cc0
cmp ecx, 0x8a51098c
je 0x140019d08
cmp ecx, 0x91188285
jne 0x140019c50
cmp r15d, 0xffffffff
setne byte [rbp + 0xae]
mov ecx, 0xb402a533
jmp 0x140019c50
cmp ecx, 0x2ae52dfc
jg 0x140019cf0
cmp ecx, 0xb402a533
je 0x140019d1c
cmp ecx, 0xe884d7dc
jne 0x140019c50
mov dword [rbp + 0xa0], r15d
mov ecx, 0x7dad4f1f
jmp 0x140019c50
cmp ecx, 0xafbab210
je 0x140019c3a
cmp ecx, 0xb05777a5
jne 0x140019c50
cmp dword [rbp + 0xb8], 0
setne byte [rbp + 0x88]
mov ecx, 0xafbab210
jmp 0x140019c50
cmp ecx, 0x7dad4f1f
jne 0x140019d30
mov ecx, 0x2ae52dfd
mov eax, dword [rbp + 0xa0]
jmp 0x140019c50
mov dword [rbp + 0xb8], 0xffffffff
mov ecx, 0xb05777a5
jmp 0x140019c50
cmp byte [rbp + 0xae], 0
mov ecx, 0x8a51098c
cmovne ecx, esi
jmp 0x140019c50
cmp ecx, 0x2ae52dfd
jne 0x140019c50
mov dword [rbp + 0x4c], eax
mov eax, 0x6e52bf8c
jmp 0x140019770
cmp eax, 0x721d7cd
je 0x14001a318
cmp eax, 0x9a436df
jne 0x140019770
mov dword [rbp + 0x34], 0xffffffff
mov eax, 0x696a646f
jmp 0x140019770
cmp eax, 0xc7e72f8a
je 0x14001a329
cmp eax, 0xc9d876a6
jne 0x140019770
sub rsp, 0x20
mov rcx, r12
call fcn.140019140
add rsp, 0x20
mov eax, 0xb3e9db2d
jmp 0x140019770
cmp eax, 0x425e714e
je 0x14001a337
cmp eax, 0x45cbaae0
jne 0x140019770
mov qword [rbp + 0x68], r13
mov rax, qword [rbp + 0x68]
add rax, 0x20
mov rdx, qword [rbp + 0x60]
mov rdi, qword [rbp + 0x58]
mov rcx, qword [rbp - 0x38]
mov esi, ebx
mov rbx, qword [rbp + 0x68]
mov r10, qword [rcx]
sub rsp, 0x40
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rbx
mov ebx, esi
mov qword [rsp + 0x20], rdx
mov rdx, qword [rbp - 0x10]
lea r8, [rbp + 0xc7]
lea r9, [rbp + 0xc8]
call qword [r10 + 0x38]
mov esi, 0xe884d7dc
add rsp, 0x40
mov dword [rbp + 0x94], eax
mov eax, 0xb1fb6ecb
jmp 0x140019770
cmp eax, 0xac045687
je 0x14001a34c
cmp eax, 0xae1413f6
jne 0x140019770
cmp qword [rbp - 0x28], 0
mov eax, 0x1963640c
mov ecx, 0xd5abb111
cmove eax, ecx
jmp 0x140019770
cmp eax, 0x29298dd5
je 0x14001a35a
cmp eax, 0x29cf69c6
jne 0x140019770
mov eax, 0xa5e75c60
mov ebx, dword [rbp + 0x84]
jmp 0x140019770
cmp eax, 0xf4b11f78
je 0x14001a3a7
cmp eax, 0xf7d8c475
jne 0x140019770
mov eax, 0xa5e75c60
mov ebx, r15d
jmp 0x140019770
cmp eax, 0x6c447a0a
je 0x14001a3b4
cmp eax, 0x6d1b7ab8
jne 0x140019770
mov rax, qword [rbp + 0x78]
add rax, 0x40
mov ecx, 0x83bcc0d8
nop dword [rax]
cmp ecx, 0x83bcc0d8
je 0x140019ed5
cmp ecx, 0xb9e284a0
jne 0x140019ec0
jmp 0x14001a3c5
mov ecx, 0xb9e284a0
jmp 0x140019ec0
cmp eax, 0x86f7435f
je 0x14001a3e7
cmp eax, 0x884dc7d0
jne 0x140019770
mov rax, qword [rbp + 0x58]
mov rax, qword [rax]
mov qword [rbp - 0x40], rax
mov eax, 0x66eccb2
jmp 0x140019770
cmp eax, 0x18f3d679
je 0x14001a3fa
cmp eax, 0x1963640c
jne 0x140019770
mov qword [rbp + 0x18], r13
mov rax, qword [rbp + 0x18]
mov eax, 0xc9627ced
nop word [rax + rax]
cmp eax, 0xc9627ced
je 0x140019f43
cmp eax, 0x7e412b39
jne 0x140019f30
jmp 0x14001a40b
mov eax, 0x7e412b39
jmp 0x140019f30
cmp eax, 0xd893a220
je 0x14001a428
cmp eax, 0xe5c89694
jne 0x140019770
cmp qword [rbp - 0x20], 0
mov eax, 0xc9d876a6
mov ecx, 0x6eb0c567
cmove eax, ecx
jmp 0x140019770
cmp eax, 0x65462bf9
je 0x14001a44a
cmp eax, 0x696a646f
jne 0x140019770
mov eax, 0xec4a1770
mov ecx, dword [rbp + 0x34]
mov dword [rbp + 0x9c], ecx
jmp 0x140019770
cmp eax, 0xb3e9db2d
je 0x14001a463
cmp eax, 0xb4fbeb76
jne 0x140019770
mov eax, 0xec4a1770
mov ecx, dword [rbp + 0x3c]
mov dword [rbp + 0x9c], ecx
jmp 0x140019770
cmp eax, 0x2dc0f4d2
je 0x14001a480
cmp eax, 0x368a7c68
jne 0x140019770
mov qword [rbp + 0x78], r12
mov eax, 0x41fbd1c1
jmp 0x140019770
cmp eax, 0xfdc7ce0d
je 0x14001a48e
cmp eax, 0x2cefdda
jne 0x140019770
mov eax, 0x10
call fcn.140027e20
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x60], rax
mov eax, 0x10
call fcn.140027e20
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x58], rax
mov dword [rbp + 0xb8], 0xffffffff
mov ecx, 0xf94d40b3
nop word [rax + rax]
cmp ecx, 0x38f4db23
je 0x14001a4a7
cmp ecx, 0xf94d40b3
jne 0x14001a040
mov eax, dword [rbp + 0xb8]
cmp eax, r15d
sete al
mov ecx, 0x38f4db23
jmp 0x14001a040
cmp eax, 0x6f6b8ba0
je 0x14001a4c5
cmp eax, 0x7fbd8f19
jne 0x140019770
mov rax, qword [rbp]
mov qword [rbp + 0x70], rax
mov eax, 0x41d89d65
jmp 0x140019770
cmp eax, 0x9de97ce5
jne 0x14001a537
mov rax, qword [rbp + 0x70]
mov rax, qword [rax]
mov qword [rbp - 0x58], rax
mov eax, 0x29298dd5
jmp 0x140019770
mov rax, qword [rbp - 0x40]
movabs rdi, 0xc957bc56ebcdb15c
add rax, rdi
mov rcx, qword [rbp + 0x68]
movabs rdx, 0x692e5a7284d9f88
add rcx, rdx
sub rdx, rcx
add rdx, rax
sub rdx, rdi
mov qword [rbp + 0x50], rdx
cmp qword [rbp + 0x50], 0
setne byte [rbp + 0xb2]
mov eax, 0x6acdb8f1
jmp 0x140019770
mov qword [rbp + 0xb8], rax
mov rax, qword [rbp + 0xb8]
mov rcx, qword [rbp - 0x18]
cmp rcx, rax
setb byte [rbp + 0xb5]
mov eax, 0x6f6b8ba0
jmp 0x140019770
mov eax, 0x1e0d77a9
jmp 0x140019770
mov rax, qword [rbp + 0x70]
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
mov eax, 0xe5c89694
jmp 0x140019770
mov qword [rbp + 0xb8], rax
mov rax, qword [rbp + 0xb8]
mov rax, qword [rax]
cmp qword [rax], 0
setne byte [rbp + 0xb6]
mov eax, 0x121caeee
jmp 0x140019770
cmp byte [rbp + 0xaf], 0
mov eax, 0x6c447a0a
mov ecx, 0x2dc0f4d2
cmovne eax, ecx
jmp 0x140019770
mov dword [rbp + 0x28], 0xffffffff
mov eax, 0xab8f0b7f
jmp 0x140019770
mov eax, 0xf93b0a01
mov ecx, dword [rbp + 0x9c]
mov dword [rbp + 0x98], ecx
jmp 0x140019770
mov rax, qword [rbp + 0x88]
mov rcx, qword [rbp + 0xb8]
mov qword [rax], rcx
mov rax, qword [rbp + 0xa0]
mov cl, byte [rbp + 0xb4]
mov byte [rax], cl
mov eax, 0xf7d8c475
jmp 0x140019770
cmp byte [rbp + 0xb3], 0
mov eax, 0x721d7cd
mov ecx, 0xc7e72f8a
cmovne eax, ecx
jmp 0x140019770
mov eax, 0x29cf69c6
mov ecx, dword [rbp + 0x40]
mov dword [rbp + 0x84], ecx
jmp 0x140019770
cmp byte [rbp + 0xb6], 0
mov eax, 0x7fbd8f19
mov ecx, 0x6d1b7ab8
cmovne eax, ecx
jmp 0x140019770
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x10], rax
mov rax, qword [rbp + 0x10]
mov rax, qword [rbp + 0x58]
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov rax, qword [rbp + 0x20]
mov rax, qword [rax]
mov qword [rbp - 0x38], rax
mov eax, 0x45cbaae0
jmp 0x140019770
mov rax, qword [rbp - 0x50]
lea rcx, [rbp + 0xc7]
cmp rax, rcx
setne byte [rbp + 0xb0]
mov eax, 0xfdc7ce0d
jmp 0x140019770
mov eax, dword [rbp + 0x94]
cmp eax, 3
mov eax, 0x17f34de0
mov ecx, 0x21af4e0f
cmovl eax, ecx
jmp 0x140019770
mov byte [rbp + 0xb8], r15b
movsx eax, byte [rbp + 0xb8]
mov rdi, qword [rbp - 0x30]
mov dword [rbp + 0xb8], eax
mov ecx, 0xdb0520cd
nop word cs:[rax + rax]
nop dword [rax]
cmp ecx, 0xe441c36a
je 0x14001a4de
cmp ecx, 0xdb0520cd
jne 0x14001a2a0
mov ecx, dword [rbp + 0xb8]
sub rsp, 0x20
mov rdx, rdi
call fcn.1400339f4
add rsp, 0x20
cmp eax, 0xffffffff
setne al
mov ecx, 0xe441c36a
jmp 0x14001a2a0
cmp byte [rbp + 0xb7], 0
mov eax, 0x368a7c68
mov ecx, 0x9805475f
cmovne eax, ecx
jmp 0x140019770
mov eax, 0xa5e75c60
mov ebx, dword [rbp + 0x4c]
jmp 0x140019770
mov byte [r12 + 0x71], 1
mov rax, qword [rbp + 0x60]
mov rax, qword [rax]
mov qword [rbp - 0x50], rax
mov eax, 0x4c4d6553
jmp 0x140019770
mov dword [rbp + 0x40], 0xffffffff
mov eax, 0x832a5e59
jmp 0x140019770
mov dword [rbp + 0x44], r15d
mov eax, 0x2d0203b5
jmp 0x140019770
mov rax, qword [rbp + 0x70]
mov rax, qword [rax]
mov qword [rbp - 0x48], rax
mov eax, 0x86a749ac
jmp 0x140019770
mov eax, 0x18f3d679
mov r14d, dword [rbp + 0x2c]
jmp 0x140019770
movsx eax, byte [rbp + 0xc7]
mov rdi, qword [rbp - 0x58]
mov dword [rbp + 0xb8], eax
mov ecx, 0xdb0520cd
cmp ecx, 0xe441c36a
je 0x14001a4fc
cmp ecx, 0xdb0520cd
jne 0x14001a370
mov ecx, dword [rbp + 0xb8]
sub rsp, 0x20
mov rdx, rdi
call fcn.1400339f4
add rsp, 0x20
cmp eax, 0xffffffff
setne al
mov ecx, 0xe441c36a
jmp 0x14001a370
mov eax, 0xa5e75c60
mov ebx, dword [rbp + 0x48]
jmp 0x140019770
mov dword [rbp + 0x2c], 0xffffffff
mov eax, 0xac045687
jmp 0x140019770
mov qword [rbp + 0xb8], rax
mov rax, qword [rbp + 0xb8]
mov rax, qword [rax]
mov rax, qword [rax]
mov qword [rbp - 0x18], rax
mov eax, 0x681d1b7
jmp 0x140019770
mov eax, 0xec4a1770
mov ecx, dword [rbp + 0x38]
mov dword [rbp + 0x9c], ecx
jmp 0x140019770
mov eax, 0xf93b0a01
mov dword [rbp + 0x98], r14d
jmp 0x140019770
mov byte [rbp + 0xb8], r15b
mov al, byte [rbp + 0xb8]
mov byte [rbp + 0xc7], al
mov eax, 0xca6a9910
jmp 0x140019770
mov eax, 0xc9627ced
nop dword [rax]
cmp eax, 0xc9627ced
je 0x14001a443
cmp eax, 0x7e412b39
jne 0x14001a430
jmp 0x14001a51a
mov eax, 0x7e412b39
jmp 0x14001a430
cmp byte [rbp + 0xb1], 0
mov eax, 0x92e57f3f
mov ecx, 0xf9d62df8
cmovne eax, ecx
jmp 0x140019770
mov rax, qword [rbp - 8]
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov rax, qword [rax]
mov qword [rbp - 0x28], rax
mov eax, 0xae1413f6
jmp 0x140019770
mov dword [rbp + 0x30], r15d
mov eax, 0x4dd3a11f
jmp 0x140019770
cmp byte [rbp + 0xb0], 0
mov eax, 0x9a436df
mov ecx, 0xc236d04c
cmovne eax, ecx
jmp 0x140019770
and al, 1
mov byte [rbp + 0xa0], al
mov al, byte [rbp + 0xa0]
mov byte [rbp + 0xb7], al
mov eax, 0x2a89f20a
jmp 0x140019770
cmp byte [rbp + 0xb5], 0
mov eax, 0x7fbd8f19
mov ecx, 0xd893a220
cmovne eax, ecx
jmp 0x140019770
and al, 1
mov byte [rbp + 0xa0], al
mov al, byte [rbp + 0xa0]
mov byte [rbp + 0xb3], al
mov eax, 0x69df56ac
jmp 0x140019770
and al, 1
mov byte [rbp + 0xa0], al
mov al, byte [rbp + 0xa0]
mov byte [rbp + 0xaf], al
mov eax, 0xa9efda29
jmp 0x140019770
mov byte [rbp + 0xb8], r15b
mov al, byte [rbp + 0xb8]
mov byte [rbp + 0xb4], al
mov eax, 0xef038f1e
jmp 0x140019770
cmp eax, 0xa5e75c60
jne 0x140019770
mov eax, ebx
lea rsp, [rbp + 0xc8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret