Function at 0x1400c7ab0
Capabilities:
Write file on windows

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
lea rbp, [rsp - 0x27]
sub rsp, 0xe0
mov rax, qword [0x1402a83b0]
xor rax, rsp
mov qword [rbp + 0x17], rax
mov rsi, rcx
lea rcx, [rsp + 0x20]
movzx r12d, r9w
movzx edi, r8w
mov rbx, rdx
call fcn.140061e90
test r12w, r12w
je 0x1400c7b06
mov eax, dword [0x14020d048]
movsd xmm0, qword [str.OS_2_Bitmap]
mov dword [rbp - 0x61], eax
jmp 0x1400c7b2c
mov eax, dword [0x14020cfc0]
movsd xmm0, qword [str.Windows_Bitmap]
mov dword [rbp - 0x61], eax
movzx eax, word [0x14020cfc4]
mov word [rbp - 0x5d], ax
movzx eax, byte [0x14020cfc6]
mov byte [rbp - 0x5b], al
cmp word [rbx + 0x138], 0
movsd qword [rbp - 0x69], xmm0
je 0x1400c7b69
lea rcx, [rbp - 0x69]
dec rcx
cmp byte [rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x1400c7b42
mov eax, dword [str.__RLE_]
mov dword [rcx], eax
movzx eax, word [0x14021dddc]
mov word [rcx + 4], ax
movzx eax, byte [0x14021ddde]
mov byte [rcx + 6], al
mov eax, 0x10
mov r13d, 1
mov word [rsp + 0x32], di
mov word [rsp + 0x24], ax
mov eax, dword [rbx + 0x50]
mov word [rsp + 0x30], r13w
cmp di, r13w
jne 0x1400c7b9b
add eax, 7
cdq
and edx, 7
add eax, edx
sar eax, 3
jmp 0x1400c7bbc
cmp di, 2
jne 0x1400c7baf
add eax, 3
cdq
and edx, 3
add eax, edx
sar eax, 2
jmp 0x1400c7bbc
cmp di, 4
jne 0x1400c7bbc
inc eax
cdq
sub eax, edx
sar eax, 1
add eax, 3
lea rdx, [rsp + 0x20]
mov rcx, rbx
and eax, 0xfffffffc
mov dword [rbp - 0x79], 0x80100
mov dword [rbp - 0x7d], eax
call fcn.14005fe70
movzx r14d, ax
test ax, ax
jne 0x1400c7d42
movzx ecx, dil
mov eax, r13d
shl eax, cl
test eax, eax
jle 0x1400c7c64
mov rdi, qword [rbp - 0x71]
mov qword [rsp + 0x138], r15
mov r15d, eax
add rdi, 2
mov rdx, qword [rsi]
test r12w, r12w
jne 0x1400c7c33
movzx ecx, byte [rdi]
call fcn.1401c1ae4
movzx ecx, byte [rdi - 1]
mov rdx, qword [rsi]
call fcn.1401c1ae4
movzx ecx, byte [rdi - 2]
mov rdx, qword [rsi]
call fcn.1401c1ae4
xor ecx, ecx
jmp 0x1400c7c4b
movzx ecx, byte [rdi - 2]
call fcn.1401c1ae4
movzx ecx, byte [rdi - 1]
mov rdx, qword [rsi]
call fcn.1401c1ae4
movzx ecx, byte [rdi]
mov rdx, qword [rsi]
call fcn.1401c1ae4
add rdi, 3
dec r15
jne 0x1400c7c06
mov r15, qword [rsp + 0x138]
xor edi, edi
cmp dword [rbx + 0x54], edi
jle 0x1400c7d08
nop
test r14w, r14w
jne 0x1400c7d08
mov r8d, r13d
mov edx, edi
mov rcx, rbx
call fcn.1400629c0
test r12w, r12w
jne 0x1400c7ce0
movzx eax, word [rsp + 0x32]
cmp ax, 8
jne 0x1400c7cb9
cmp word [rbx + 0x138], r12w
je 0x1400c7ce0
mov r8d, dword [rbx + 0x50]
mov rdx, qword [rsp + 0x28]
mov rcx, rsi
call fcn.1400c7460
movzx r14d, ax
jmp 0x1400c7cfd
cmp ax, 4
jne 0x1400c7ce0
cmp word [rbx + 0x138], 0
je 0x1400c7ce0
mov r8d, dword [rbx + 0x50]
mov rdx, qword [rsp + 0x28]
mov rcx, rsi
call fcn.1400c7210
movzx r14d, ax
jmp 0x1400c7cfd
movsxd rdx, dword [rbp - 0x7d]
mov r9, qword [rsi]
mov rcx, qword [rsp + 0x28]
mov r8, r13
call fcn.1401c24f8
test rax, rax
jne 0x1400c7cfd
lea r14d, [rax + 6]
inc edi
cmp edi, dword [rbx + 0x54]
jl 0x1400c7c70
cmp word [rbx + 0x138], 0
je 0x1400c7d3a
movzx eax, word [rsp + 0x32]
mov edx, 0xfffb
sub ax, 4
test dx, ax
jne 0x1400c7d3a
mov rdx, qword [rsi]
xor ecx, ecx
call fcn.1401c1ae4
mov rdx, qword [rsi]
mov ecx, r13d
call fcn.1401c1ae4
mov rcx, rbx
call fcn.14005dcb0
movzx eax, r14w
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.1401bd600
add rsp, 0xe0
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret