Function at 0x180045cb0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov dword [rsp + 8], ecx
push rbp
push rsi
push r15
lea rbp, [rsp - 0x1c0]
sub rsp, 0x2c0
mov eax, dword [0x1800aa960]
mov r11, r9
mov rsi, rdx
test al, 1
jne 0x180045cef
or eax, 1
mov dword [0x1800aa960], eax
mov qword [rsp + 0x2b8], rbx
lea rdx, [0x1800a8b80]
mov ebx, dword [rbp + 0x1e0]
lea r10, [0x1800a8bd0]
mov qword [rsp + 0x2b0], rdi
lea r9, [0x1800a8bc0]
imul eax, ecx, 0x2f4
lea r8, [0x1800a8b90]
mov qword [rsp + 0x2a8], r12
mov r15d, ecx
mov qword [rsp + 0x2a0], r13
mov qword [rsp + 0x298], r14
mov r14d, dword [rbp + 0x1e0]
mov dword [rsp + 0x70], eax
mov qword [rsp + 0x40], rbx
cmp ecx, eax
ja 0x1800468c3
mov rdi, qword [rbp - 0x78]
mov r13d, dword [rbp + 0x1e0]
mov r12d, dword [rbp + 0x1e0]
mov qword [rsp + 0x50], rdi
mov eax, 0x4645
cmp r15d, 0x1f27
ja 0x18004634f
je 0x1800462b2
cmp r15d, 0xfaf
ja 0x1800461a2
je 0x180046067
mov eax, r15d
sub eax, 0x37
je 0x180045fa4
sub eax, 0x63
je 0x180045f62
sub eax, 0x1e
je 0x180045e48
sub eax, 0x1f
je 0x180045e1f
cmp eax, 0x71c
jne 0x1800467b5
mov qword [rbp + 0xf8], rdx
lea r9, [rbp + 0xf0]
lea rdx, [rbp + 0x68]
mov dword [rbp + 0x68], 0xffffffff
lea r8, [rbp + 0x60]
mov dword [rbp + 0x60], 0
lea rcx, [rbp + 0xf8]
mov qword [rbp + 0xf0], 0
mov dword [rsp + 0x20], 0x63
call fcn.180041530
mov ecx, dword [rbp + 0x1e0]
add ebx, eax
mov qword [rsp + 0x40], rbx
jmp 0x1800467b5
movzx eax, word [0x18009d82a]
mov word [0x1800aa9b0], ax
movzx eax, byte [0x18009d82c]
mov byte [0x1800aa9b2], al
mov word [0x1800aa9b3], 0x44
jmp 0x1800467b5
mov rax, qword [rbp + 0x200]
mov rax, qword [rax]
test rax, rax
je 0x1800467ef
mov ebx, dword [rax]
test ebx, ebx
jle 0x1800467ef
movsxd r13, dword [rax + 4]
test r13d, r13d
js 0x1800467ef
cmp ebx, r13d
jl 0x1800467ef
mov rax, qword [r11]
test rax, rax
je 0x1800467ef
mov rcx, rsi
add ebx, 0xfffffffe
call rax
mov r12d, eax
test eax, eax
js 0x180045f94
mov rdi, r13
nop dword [rax]
cmp r13d, ebx
jle 0x180045ef4
mov rbx, qword [rbp + 0x200]
lea rcx, [rbp + 0x70]
mov r9d, 0xe7
xor r8d, r8d
xor edx, edx
mov rax, qword [rbx]
mov dword [rax + 4], r13d
lea eax, [r13 + 2]
mov dword [rbp + 0x70], eax
mov rax, qword [rbx]
mov qword [rbp + reloc.OLEAUT32.dll_VarUI2FromUI1], rax
lea rax, [rbp + reloc.OLEAUT32.dll_VarUI2FromUI1]
mov qword [rsp + 0x20], rax
call fcn.180006b60
test eax, eax
jne 0x1800467ef
mov rax, qword [rbx]
mov ebx, dword [rax]
sub ebx, 2
mov rax, qword [rbp + 0x200]
inc r13d
mov rax, qword [rax]
mov rcx, qword [rax + 8]
mov rax, qword [rbp + 0x1f0]
mov byte [rdi + rcx], r12b
inc rdi
movsx eax, byte [rax]
cmp r12d, eax
je 0x180045f47
mov rax, qword [rbp + 0x1f8]
mov rcx, rsi
call qword [rax]
mov r12d, eax
test eax, eax
jns 0x180045ea0
mov rbx, qword [rsp + 0x40]
mov ecx, dword [rbp + 0x1e0]
mov rdi, qword [rsp + 0x50]
jmp 0x1800467b5
mov rbx, qword [rsp + 0x40]
mov ecx, dword [rbp + 0x1e0]
mov rdi, qword [rsp + 0x50]
mov r15d, 0x1a98
jmp 0x1800467b5
movsxd rax, dword [r11]
mov rbx, qword [rbp + 0x200]
mov dword [rbx + 4], eax
test eax, eax
jle 0x18004682e
mov rcx, qword [rbx + 0x18]
mov rdx, rax
shl rdx, 3
call fcn.180066c40
test rax, rax
je 0x1800467f9
mov qword [rbx + 0x18], rax
mov rbx, qword [rsp + 0x40]
mov ecx, dword [rbp + 0x1e0]
jmp 0x1800467b5
mov ecx, 2
call fcn.180066670
mov rcx, rax
lea r8, [0x180096248]
xor r9d, r9d
lea rdx, str._Vector_iterator_std::_Vector_val_std::_Simple_types_CDiaVariableLocation_____
call fcn.1800010d0
xor eax, eax
mov dword [rsp + 0x30], 0xffffffff
lea r9, [rsp + 0x48]
mov qword [rsp + 0x40], rax
lea r8, [rsp + 0x38]
mov dword [rsp + 0x38], eax
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x40]
mov dword [rsp + 0x20], 0x63
call fcn.180041530
mov rbx, rax
mov dword [rbp + 0xa0], 0xffffffff
xor eax, eax
mov dword [rsp + 0x20], 0x63
mov qword [rbp + 0x140], rax
lea r9, [rbp + 0x138]
mov dword [rbp + 0x98], eax
lea r8, [rbp + 0x98]
lea rax, [0x1800a8b80]
lea rdx, [rbp + 0xa0]
mov qword [rbp + 0x138], rax
lea rcx, [rbp + 0x140]
call fcn.180041530
mov ecx, dword [rbp + 0x1e0]
add eax, ebx
mov qword [rsp + 0x40], rax
mov ebx, eax
jmp 0x1800467b5
mov qword [rsp + 0x48], rdx
lea r9, [rsp + 0x48]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x30], 0xffffffff
lea r8, [rsp + 0x38]
mov qword [rsp + 0x58], r10
lea rcx, [rsp + 0x58]
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x20], 0x63
call fcn.180041530
mov rsi, rax
mov dword [rsp + 0x30], 0xffffffff
lea rax, [0x1800a8bc0]
mov dword [rsp + 0x20], 0x63
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x48]
lea rax, [0x1800a8b80]
xor ebx, ebx
lea r8, [rsp + 0x38]
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x38], ebx
lea rcx, [rsp + 0x58]
call fcn.180041530
mov rdi, rax
mov dword [rsp + 0x30], 0xffffffff
lea rax, [0x1800a8b80]
mov dword [rsp + 0x38], ebx
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x48]
lea rax, [0x1800a8bd0]
mov dword [rsp + 0x20], 0x63
lea r8, [rsp + 0x38]
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x58]
call fcn.180041530
mov rbx, rax
mov dword [rbp + 0xb0], 0xffffffff
lea rax, [0x1800a8b80]
mov dword [rbp + 0xa8], 0
mov qword [rbp + reloc.OLEAUT32.dll_VarI8FromCy], rax
lea r9, [rbp + 0x148]
lea rax, [0x1800a8bc0]
mov dword [rsp + 0x20], 0x63
lea r8, [rbp + 0xa8]
mov qword [rbp + 0x148], rax
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + reloc.OLEAUT32.dll_VarI8FromCy]
call fcn.180041530
add eax, ebx
add eax, edi
add eax, esi
mov rsi, qword [rbp + 0x1e8]
jmp 0x1800466e3
cmp r15d, 0x1642
je 0x1800462aa
cmp r15d, 0x176b
je 0x1800461e8
cmp r15d, 0x1a98
je 0x180045f57
cmp r15d, 0x1f13
jne 0x1800467b5
mov word [0x1800aa9b4], ax
mov dword [0x1800aa9b6], 0x4a494847
jmp 0x1800467b5
mov qword [rsp + 0x58], r9
lea r8, [rsp + 0x38]
lea r9, [rsp + 0x48]
mov dword [rsp + 0x30], 0xffffffff
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x38], 0
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x48], r10
mov dword [rsp + 0x20], 0x63
call fcn.180041530
mov rdi, rax
mov dword [rsp + 0x30], 0xffffffff
lea rax, [0x1800a8bd0]
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x48]
lea rax, [0x1800a8bc0]
mov dword [rsp + 0x20], 0x63
lea r8, [rsp + 0x38]
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x58]
call fcn.180041530
lea rcx, [0x1800a8b80]
mov rbx, rax
xor eax, eax
mov qword [rbp + 0x160], rcx
mov qword [rbp + 0x158], rcx
lea r9, [rbp + 0x158]
mov dword [rbp - 0x28], eax
lea rcx, [rbp + 0x160]
mov dword [rbp + 0x58], eax
lea r8, [rbp + 0x58]
lea rdx, [rbp - 0x28]
jmp 0x1800466d2
xor r14d, r14d
jmp 0x1800467b5
mov qword [rsp + 0x58], rdx
lea r9, [rsp + 0x48]
mov qword [rsp + 0x48], rdx
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x30], 0xffffffff
lea rcx, [rsp + 0x58]
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x20], 0x63
call fcn.180041530
mov rbx, rax
mov dword [rbp - 0x18], 0
lea rax, [0x1800a8b90]
mov dword [rbp - 0x20], 1
lea r9, [rbp + 0x168]
mov qword [rbp + 0x170], rax
lea r8, [rbp - 0x20]
mov qword [rbp + 0x168], rax
lea rdx, [rbp - 0x18]
mov dword [rsp + 0x20], 0x63
lea rcx, [rbp + 0x170]
call fcn.180041530
mov ecx, dword [rbp + 0x1e0]
add eax, ebx
mov rbx, qword [rsp + 0x40]
add ebx, eax
mov qword [rsp + 0x40], rbx
jmp 0x1800467b5
cmp r15d, 0x4e58
ja 0x1800466ff
je 0x18004735a
cmp r15d, 0x26e3
je 0x180046622
cmp r15d, 0x2e9f
je 0x180046527
cmp r15d, 0x3478
je 0x1800464da
cmp r15d, 0x365b
je 0x1800463bf
cmp r15d, 0x3d4f
jne 0x1800467b5
movzx eax, word [0x18009d910]
mov word [0x1800aa9ba], ax
movzx eax, byte [0x18009d912]
mov byte [0x1800aa9bc], al
jmp 0x1800467b5
lea r9, [rsp + 0x48]
mov qword [rsp + 0x48], rdi
xor r8d, r8d
mov qword [rsp + 0x20], 0
xor edx, edx
mov ecx, 0x93
call fcn.180035cc0
lea rax, [0x1800a8ba0]
mov dword [rsp + 0x30], 0xffffffff
lea rbx, [0x1800a8b90]
mov qword [rsp + 0x48], rax
lea r9, [rsp + 0x48]
mov qword [rsp + 0x58], rbx
lea r8, [rsp + 0x38]
mov dword [rsp + 0x38], 0
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x20], 0x63
lea rcx, [rsp + 0x58]
call fcn.180041530
mov rdi, rax
mov dword [rsp + 0x30], 0xa
lea rax, [0x1800a8ba0]
mov qword [rsp + 0x58], rbx
lea r9, [rsp + 0x48]
mov qword [rsp + 0x48], rax
lea r8, [rsp + 0x38]
mov dword [rsp + 0x38], reloc.OLEAUT32.dll_SafeArrayLock
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x20], 0x63
lea rcx, [rsp + 0x58]
call fcn.180041530
mov ecx, 2
mov rbx, rax
call fcn.180066670
mov rcx, rax
lea r8, [0x180096248]
xor r9d, r9d
lea rdx, str.DEBUG__s:_d:_TEST:_int_binstrrcaseless__const_bstring_s1__int_pos__const_bstring_s2___n
call fcn.1800010d0
xor eax, eax
mov dword [rbp - 8], 0xffffffff
mov qword [rbp + 0x180], rax
lea r9, [rbp - 8]
mov dword [rbp - 0x10], eax
lea rdx, [rbp + 0x178]
mov qword [rbp + 0x178], rax
lea rcx, [rbp + 0x180]
lea rax, [rbp - 0x10]
mov r8d, 0xb6
mov qword [rsp + 0x20], rax
call fcn.1800361b0
jmp 0x1800466df
mov rbx, qword [rbp + 0x200]
movsxd rcx, r13d
mov rax, qword [rbx]
mov rax, qword [rax + 8]
mov byte [rcx + rax], 0
mov rax, qword [rbx]
mov dword [rax + 4], r13d
test r13d, r13d
jne 0x180046514
test r12d, r12d
jns 0x180046514
mov rbx, qword [rsp + 0x40]
lea r14d, [r13 + 1]
mov ecx, dword [rbp + 0x1e0]
jmp 0x1800467b5
mov rbx, qword [rsp + 0x40]
xor r14d, r14d
mov ecx, dword [rbp + 0x1e0]
jmp 0x1800467b5
mov qword [rsp + 0x50], r8
lea r9, [rsp + 0x50]
mov r8d, 0xea
xor edx, edx
xor ecx, ecx
call fcn.180003f40
mov rdi, rax
mov dword [rsp + 0x20], 0x63
xor eax, eax
mov qword [rsp + 0x48], rdi
mov dword [rsp + 0x30], eax
lea r9, [rsp + 0x50]
mov dword [rsp + 0x38], eax
lea r8, [rsp + 0x38]
lea rax, [0x1800a8b90]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x48]
call fcn.180041530
lea r9, [rsp + 0x50]
mov qword [rsp + 0x50], rdi
xor r8d, r8d
mov qword [rsp + 0x20], 0
xor edx, edx
mov ecx, 0x93
mov rbx, rax
call fcn.180035cc0
xor r9d, r9d
lea rdx, str.BOGUS
mov r8d, reloc.OLEAUT32.dll_VarUI2FromUI1
xor ecx, ecx
call fcn.180004c30
mov rdi, rax
mov qword [rsp + 0x50], rax
mov qword [rbp + 0xe0], rax
lea r9, [rbp + 0xd8]
lea rax, [0x1800a8b90]
mov dword [rbp + 8], 0xffffffff
lea r8, [rbp]
mov qword [rbp + 0xd8], rax
lea rdx, [rbp + 8]
mov dword [rbp], 0
lea rcx, [rbp + 0xe0]
mov dword [rsp + 0x20], 0x63
call fcn.180041530
mov ecx, dword [rbp + 0x1e0]
add eax, ebx
mov rbx, qword [rsp + 0x40]
add ebx, eax
mov qword [rsp + 0x40], rbx
jmp 0x1800467b5
mov qword [rsp + 0x58], rdx
lea r9, [rsp + 0x48]
mov qword [rsp + 0x48], r8
lea rdx, [rsp + 0x30]
lea r8, [rsp + 0x38]
mov dword [rsp + 0x30], 5
lea rcx, [rsp + 0x58]
mov dword [rsp + 0x38], 5
mov dword [rsp + 0x20], 0x63
call fcn.180041530
mov rdi, rax
mov dword [rsp + 0x30], 0xffffffff
lea rax, [0x1800a8b90]
mov dword [rsp + 0x38], 0xffffffff
lea r9, [rsp + 0x48]
mov qword [rsp + 0x58], rax
lea r8, [rsp + 0x38]
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x30]
mov dword [rsp + 0x20], 0x63
lea rcx, [rsp + 0x58]
call fcn.180041530
lea rcx, [0x1800a8b90]
mov rbx, rax
xor eax, eax
mov qword [rbp - 0x78], rcx
mov qword [rbp + 0xe8], rcx
lea r9, [rbp + 0xe8]
mov dword [rbp + 0x18], eax
lea rcx, [rbp - 0x78]
mov dword [rbp + 0x10], eax
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x18]
mov dword [rsp + 0x20], 0x63
call fcn.180041530
add eax, ebx
add eax, edi
mov rbx, qword [rsp + 0x40]
mov ecx, dword [rbp + 0x1e0]
add ebx, eax
mov rdi, qword [rsp + 0x50]
mov qword [rsp + 0x40], rbx
jmp 0x1800467b5
cmp r15d, 0x5b8b
je 0x1800467a2
cmp r15d, 0x79c7
je 0x18004675f
cmp r15d, 0x9803
je 0x180046737
cmp r15d, 0xb63f
jne 0x1800467b5
mov dword [0x1800aa9ca], 0x64636261
jmp 0x1800467b5
mov r8d, 3
mov byte [0x1800aa9c7], 0
lea rdx, str.XYZP_PAL_4CC_V___Extended_PAL_format_XYZ_palette
lea rcx, [0x1800aa9c7]
call fcn.18006add0
mov ecx, dword [rbp + 0x1e0]
jmp 0x1800467b5
movzx eax, word [0x18009d842]
lea rdx, [0x18009d86a]
mov word [0x1800aa9c2], ax
lea rcx, [0x1800aa9c5]
movzx eax, byte [0x18009d844]
mov r8d, 2
mov byte [0x1800aa9c4], al
mov byte [0x1800aa9c5], 0
call fcn.18006add0
mov ecx, dword [rbp + 0x1e0]
jmp 0x1800467b5
mov dword [0x1800aa9bd], 0x51504f4e
mov word [0x1800aa9c1], 0x52
mov r11, qword [rbp + 0x1f8]
lea eax, [rcx + rcx*8]
lea r15d, [r15 + rax*4]
lea rdx, [0x1800a8b80]
cmp r15d, dword [rsp + 0x70]
ja 0x1800468ce
lea r8, [0x1800a8b90]
lea r9, [0x1800a8bc0]
lea r10, [0x1800a8bd0]
jmp 0x180045d71
mov eax, 0xffffffff
jmp 0x18004735d
call fcn.18006be3c
cmp dword [rax], 0
jne 0x18004680c
lea rbx, str.None
jmp 0x18004681b
call fcn.18006be3c
mov ecx, dword [rax]
call fcn.18006cc98
mov rbx, rax
mov ecx, 2
call fcn.180066670
lea rdx, str._DiskUploadWorker__Error_reading_input:__1
jmp 0x180046861
call fcn.18006be3c
cmp dword [rax], 0
jne 0x180046841
lea rbx, str.None
jmp 0x180046850
call fcn.18006be3c
mov ecx, dword [rax]
call fcn.18006cc98
mov rbx, rax
mov ecx, 2
call fcn.180066670
lea rdx, str._Z28soa4_get_image_channel_orderP17_image1d_buffer_t
xor r9d, r9d
mov qword [rsp + 0x20], rbx
lea r8, [0x180096248]
mov rcx, rax
call fcn.1800010d0
call fcn.18006be3c
mov dword [rax], 0
mov r9, qword [rbp - 0x78]
mov eax, VarR8FromI2
mov ecx, dword [rbp + 0x1e0]
mov r15, qword [rbp - 0x78]
mov r12, qword [rbp - 0x78]
mov rdi, qword [0x1800aa948]
lea r10d, [rax + 0x4e]
mov r13d, dword [rbp + 0x1e0]
lea r14d, [rax - 0x4d]
add eax, 0x17c0
mov qword [rsp + 0x48], r9
mov dword [rsp + 0x38], ecx
jmp 0x180046e8c
mov rsi, qword [rbp - 0x78]
mov qword [rsp + 0x50], rsi
jmp 0x1800468d3
mov rsi, qword [rsp + 0x50]
mov r9, qword [rbp - 0x78]
mov r10d, ecx
mov r8d, dword [rbp + 0x1e0]
mov r15, qword [rbp - 0x78]
mov r12, qword [rbp - 0x78]
mov rdi, qword [0x1800aa948]
mov r13d, dword [rbp + 0x1e0]
mov qword [rsp + 0x48], r9
mov dword [rsp + 0x38], r8d
lea eax, [rcx - 0x15]
mov dword [rsp + 0x30], r10d
cmp r10d, eax
jbe 0x18004735a
lea eax, [r10 - 0x2e]
cmp eax, 0xa9
ja case.default.0x180046941
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax + 0x473ec]
mov ecx, dword [rcx + rax*4 + 0x47394]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
movzx eax, word [0x18009d931]
lea rdx, [0x18009d954]
mov word [0x1800aa9d2], ax
lea rcx, [0x1800aa9d5]
movzx eax, byte [0x18009d933]
mov r8d, 5
mov byte [0x1800aa9d4], al
mov byte [0x1800aa9d5], 0
call fcn.18006add0
mov r9, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x30]
mov rdi, qword [0x1800aa948]
mov byte [0x1800aa9da], 0
jmp case.0x180046941.67
mov rcx, qword [rbp + 0x200]
xor r9d, r9d
movabs r8, 0xaaaaaaaaaaaaaaab
mov qword [rsp + 0x48], r9
mov rax, r8
mul qword [rcx + 0x10]
shr rdx, 1
lea rcx, [rdx + rdx*2]
test rcx, rcx
je case.0x180046941.67
dec rcx
mov rax, r8
mul rcx
shr rdx, 1
inc rdx
lea r9, [rdx + rdx*2]
mov qword [rsp + 0x48], r9
nop dword [rax]
nop word [rax + rax]
mov r8d, 0xea
mov eax, r8d
sub eax, 0xea
je 0x180046a44
sub eax, 0x21
je 0x180046a23
cmp eax, 0x21
jne 0x180046a76
movzx eax, byte [r12 + 2]
and eax, 0x3f
movzx eax, byte [rax + rdi]
mov byte [r15], al
inc r15
add r12, 3
jmp 0x180046a76
movzx eax, byte [r12 + 2]
movzx ecx, byte [r12 + 1]
shr eax, 6
and ecx, 0xf
lea eax, [rax + rcx*4]
movzx eax, byte [rax + rdi]
mov byte [r15], al
inc r15
jmp 0x180046a76
movzx eax, byte [r12]
shr rax, 2
movzx eax, byte [rax + rdi]
mov byte [r15], al
movzx ecx, byte [r12]
movzx eax, byte [r12 + 1]
and ecx, 3
shl ecx, 4
shr eax, 4
add ecx, eax
movzx ecx, byte [rcx + rdi]
mov byte [r15 + 1], cl
add r15, 2
add r8d, 0x21
cmp r8d, 0x14d
jb 0x1800469f6
sub rdx, 1
jne 0x1800469f0
jmp case.0x180046941.67
mov qword [rbp + 0x80], rdx
lea rax, [rsp + 0x70]
mov qword [rbp + 0x78], rdx
lea r9, [rbp - 0x60]
lea rdx, [rbp + 0x78]
mov qword [rsp + 0x20], rax
mov r8d, 0xb6
mov dword [rbp - 0x60], 0xffffffff
lea rcx, [rbp + 0x80]
mov dword [rsp + 0x70], 1
call fcn.1800361b0
mov ebx, eax
mov dword [rsp + 0x70], 0
lea rax, [0x1800a8b90]
mov dword [rbp - 0x60], 1
mov qword [rbp + 0x78], rax
lea r9, [rsp + 0x70]
mov qword [rbp + 0x80], rax
lea rdx, [rbp + 0x80]
lea rax, [rbp - 0x60]
lea rcx, [rbp + 0x78]
mov r8d, 0xb6
mov qword [rsp + 0x20], rax
call fcn.1800361b0
add eax, ebx
mov rbx, qword [rsp + 0x40]
mov rdi, qword [0x1800aa948]
add ebx, eax
mov r9, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x30]
mov qword [rsp + 0x40], rbx
jmp case.0x180046941.67
mov rbx, qword [rbp + 0x200]
lea rdi, [0x1800aa9b0]
movabs rax, 0xaaaaaaaaaaaaaaab
mov qword [0x1800aa948], rdi
mov rcx, qword [rbx + 0x10]
add rcx, 2
mul rcx
mov rcx, qword [r11 + 0x10]
shr rdx, 1
shl rdx, 2
cmp rdx, rcx
ja 0x180046b90
mov qword [r11 + 0x10], rdx
mov rax, r11
cmp qword [r11 + 0x18], 0x10
jb 0x180046b8a
mov rax, qword [r11]
mov byte [rax + rdx], 0
jmp 0x180046c01
mov r8, qword [r11 + 0x18]
mov rsi, rdx
mov rax, r8
sub rsi, rcx
sub rax, rcx
cmp rsi, rax
ja 0x180046bd3
mov qword [r11 + 0x10], rdx
mov rax, r11
cmp r8, 0x10
jb 0x180046bb5
mov rax, qword [r11]
lea rbx, [rax + rcx]
mov r8, rsi
mov rcx, rbx
xor edx, edx
call fcn.180063960
mov byte [rsi + rbx], 0
mov rbx, qword [rbp + 0x200]
jmp 0x180046bf0
mov r9, rsi
mov byte [rsp + 0x20], 0
xor r8d, r8d
mov rdx, rsi
mov rcx, r11
call fcn.180057760
mov rdi, qword [0x1800aa948]
mov r11, qword [rbp + 0x1f8]
mov r10d, dword [rsp + 0x30]
mov r9, qword [rsp + 0x48]
cmp qword [rbx + 0x18], 0x10
mov r12, rbx
jb 0x180046c0e
mov r12, qword [rbx]
cmp qword [r11 + 0x18], 0x10
mov r15, r11
jb 0x180046c1b
mov r15, qword [r11]
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x40]
mov ecx, dword [rbp + 0x1e0]
mov r8d, dword [rsp + 0x38]
lea rdx, [0x1800a8b80]
mov r11, qword [rbp + 0x1f8]
dec r10d
jmp 0x180046901
lea rdi, [0x1800a8b90]
xor edx, edx
lea r9, [rsp + 0x50]
mov qword [rsp + 0x50], rdi
xor ecx, ecx
mov r8d, 0xea
call fcn.180003f40
mov rsi, rax
mov qword [rsp + 0x50], rax
xor eax, eax
mov qword [rbp + 0x110], rsi
mov dword [rbp + 0x28], eax
lea r9, [rbp + 0x28]
mov dword [rbp + 0x20], eax
lea rdx, [rbp + 0x108]
lea rax, [rbp + 0x20]
mov qword [rbp + 0x108], rdi
mov r8d, 0xb6
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x110]
call fcn.1800361b0
jmp 0x180046b22
lea r9, [rsp + 0x50]
mov qword [rsp + 0x50], rsi
xor r8d, r8d
mov qword [rsp + 0x20], 0
xor edx, edx
mov ecx, 0x93
call fcn.180035cc0
xor r9d, r9d
lea rdx, str.BOGUS
mov r8d, reloc.OLEAUT32.dll_VarUI2FromUI1
xor ecx, ecx
call fcn.180004c30
mov rsi, rax
mov qword [rsp + 0x50], rax
xor eax, eax
mov qword [rbp + 0x120], rsi
mov dword [rbp + 0x38], eax
lea r9, [rbp + 0x38]
mov dword [rbp + 0x30], eax
lea rdx, [rbp + 0x118]
lea rax, [0x1800a8b90]
mov r8d, 0xb6
mov qword [rbp + 0x118], rax
lea rcx, [rbp + 0x120]
lea rax, [rbp + 0x30]
mov qword [rsp + 0x20], rax
call fcn.1800361b0
jmp 0x180046b22
movzx eax, word [0x18009d969]
mov word [0x1800aa9e8], ax
movzx eax, byte [0x18009d96b]
mov byte [0x1800aa9ea], al
mov eax, dword [0x18009d9be]
mov dword [0x1800aa9eb], eax
movzx eax, byte [0x18009d9c2]
mov byte [0x1800aa9ef], al
mov byte [0x1800aa9f0], 0
jmp case.0x180046941.67
lea rax, [0x1800a8bd0]
mov qword [rbp + 0x128], rdx
mov qword [rbp + 0x130], rax
lea r9, [rbp + 0x48]
lea rax, [rbp + 0x40]
mov dword [rbp + 0x48], 0xffffffff
mov r8d, 0xb6
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x128]
mov dword [rbp + 0x40], 0
lea rcx, [rbp + 0x130]
call fcn.1800361b0
jmp 0x180046b22
mov r8d, 3
mov byte [0x1800aa9e1], 0
lea rdx, [0x18009d9d4]
lea rcx, [0x1800aa9e1]
call fcn.18006add0
mov r9, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x30]
mov rdi, qword [0x1800aa948]
mov byte [0x1800aa9e4], 0x30
jmp case.0x180046941.67
mov qword [rbp + 0x88], rdx
lea rax, [rbp - 0x68]
lea rdx, [rbp + 0x88]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x58]
mov dword [rbp - 0x58], 0xffffffff
mov r8d, 0xb6
mov qword [rbp + 0x90], 0
lea rcx, [rbp + 0x90]
mov dword [rbp - 0x68], 0
call fcn.1800361b0
mov ebx, eax
mov dword [rbp - 0x68], 0xffffffff
lea rax, [0x1800a8b80]
mov qword [rbp + 0x88], rax
lea r9, [rbp - 0x68]
xor eax, eax
lea rdx, [rbp + 0x90]
mov dword [rbp - 0x58], eax
lea rcx, [rbp + 0x88]
mov qword [rbp + 0x90], rax
lea rax, [rbp - 0x58]
jmp 0x180046b0b
mov eax, VarR8FromI2
cmp eax, 0x2f80
ja 0x180046eae
cmp eax, 0x4c
je 0x18004735a
cmp eax, 0x180c
je 0x18004735a
add eax, 0x17c0
jmp 0x180046e8c
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
movzx eax, word [0x18009d9f6]
mov word [0x1800aa9e5], ax
movzx eax, byte [0x18009d9f8]
mov byte [0x1800aa9e7], al
jmp case.0x180046941.67
mov qword [rbp - 0x40], rdx
lea rax, [rsp + 0x60]
lea rbx, [0x1800a8bc0]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x48]
mov qword [rbp - 0x48], rbx
lea r9, [rsp + 0x68]
mov dword [rsp + 0x68], 0xffffffff
mov r8d, 0xb6
mov dword [rsp + 0x60], 0
lea rcx, [rbp - 0x40]
call fcn.1800361b0
mov esi, eax
mov qword [rbp - 0x48], rbx
lea rax, [0x1800a8bd0]
mov dword [rsp + 0x60], 0xffffffff
mov qword [rbp - 0x40], rax
lea r9, [rsp + 0x60]
lea rax, [rsp + 0x68]
xor ebx, ebx
mov r8d, 0xb6
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x40]
mov dword [rsp + 0x68], ebx
lea rcx, [rbp - 0x48]
call fcn.1800361b0
mov edi, eax
mov dword [rsp + 0x60], 0xffffffff
lea rax, [0x1800a8bd0]
mov dword [rsp + 0x68], ebx
mov qword [rbp - 0x48], rax
lea r9, [rsp + 0x60]
lea rax, [0x1800a8bc0]
mov r8d, 0xb6
mov qword [rbp - 0x40], rax
lea rdx, [rbp - 0x40]
lea rax, [rsp + 0x68]
lea rcx, [rbp - 0x48]
mov qword [rsp + 0x20], rax
call fcn.1800361b0
mov ebx, eax
lea rcx, [0x1800a8b80]
xor eax, eax
mov qword [rbp - 0x48], rcx
mov dword [rsp + 0x60], eax
lea r9, [rsp + 0x60]
mov dword [rsp + 0x68], eax
lea rdx, [rbp - 0x40]
lea rax, [rsp + 0x68]
mov qword [rbp - 0x40], rcx
mov r8d, 0xb6
mov qword [rsp + 0x20], rax
lea rcx, [rbp - 0x48]
call fcn.1800361b0
mov r9, qword [rsp + 0x48]
add eax, ebx
mov rbx, qword [rsp + 0x40]
add eax, edi
mov rdi, qword [0x1800aa948]
add eax, esi
mov r10d, dword [rsp + 0x30]
add ebx, eax
mov rsi, qword [rsp + 0x50]
mov qword [rsp + 0x40], rbx
jmp case.0x180046941.67
mov dword [0x1800aa9ce], 0x68676665
mov byte [0x1800aa9d2], 0
jmp case.0x180046941.67
mov qword [rbp - 0x30], rdx
lea rax, [rsp + 0x78]
lea rbx, [0x1800a8b90]
mov qword [rsp + 0x20], rax
lea rdx, [rbp - 0x38]
mov qword [rbp - 0x38], rbx
lea r9, [rbp - 0x80]
mov dword [rbp - 0x80], 5
mov r8d, 0xb6
mov dword [rsp + 0x78], 5
lea rcx, [rbp - 0x30]
call fcn.1800361b0
mov edi, eax
mov dword [rsp + 0x78], 0xffffffff
lea rax, [rbp - 0x80]
mov qword [rbp - 0x38], rbx
lea r9, [rsp + 0x78]
mov qword [rsp + 0x20], rax
mov r8d, 0xb6
mov dword [rbp - 0x80], 0xffffffff
lea rdx, [rbp - 0x30]
mov qword [rbp - 0x30], rbx
lea rcx, [rbp - 0x38]
call fcn.1800361b0
mov ebx, eax
lea rcx, [0x1800a8b90]
xor eax, eax
mov qword [rbp - 0x38], rcx
mov dword [rsp + 0x78], eax
lea r9, [rsp + 0x78]
mov dword [rbp - 0x80], eax
lea rdx, [rbp - 0x30]
lea rax, [rbp - 0x80]
mov qword [rbp - 0x30], rcx
mov r8d, 0xb6
mov qword [rsp + 0x20], rax
lea rcx, [rbp - 0x38]
call fcn.1800361b0
add eax, ebx
add eax, edi
jmp 0x180046b1d
lea rax, [0x1800a8bc0]
mov qword [rbp + 0xb8], rdx
mov qword [rbp + 0xc0], rax
lea r9, [rbp - 0x70]
lea rax, [rbp - 0x50]
mov dword [rbp - 0x70], 0xffffffff
mov r8d, 0xb6
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0xb8]
mov dword [rbp - 0x50], 0
lea rcx, [rbp + 0xc0]
call fcn.1800361b0
mov ebx, eax
mov dword [rbp - 0x50], 0xffffffff
lea rax, [0x1800a8b80]
mov dword [rbp - 0x70], 0
mov qword [rbp + 0xb8], rax
lea r9, [rbp - 0x50]
lea rax, [0x1800a8bd0]
mov qword [rbp + 0xc0], rax
lea rdx, [rbp + 0xc0]
lea rax, [rbp - 0x70]
lea rcx, [rbp + 0xb8]
jmp 0x180046b0b
lea r9, [rsp + 0x40]
mov qword [rsp + 0x40], rsi
xor r8d, r8d
mov qword [rsp + 0x20], 0
xor edx, edx
mov ecx, 0x93
call fcn.180035cc0
lea rax, [0x1800a8b90]
mov dword [rsp + 0x58], 0xffffffff
mov qword [rbp + 0xd0], rax
lea r9, [rsp + 0x58]
lea rax, [0x1800a8ba0]
mov dword [rbp + 0x50], 0
mov qword [rbp + 0xc8], rax
lea rdx, [rbp + 0xc8]
lea rax, [rbp + 0x50]
mov r8d, 0xb6
lea rcx, [rbp + 0xd0]
mov qword [rsp + 0x20], rax
call fcn.1800361b0
jmp 0x180046b22
mov byte [0x1800aa9e8], 0
jmp case.0x180046941.67
mov rbx, qword [rbp + 0x200]
cmp r9, qword [rbx + 0x10]
jae 0x180046c20
mov edx, 0xb7
cmp edx, 0xb7
je 0x18004724a
cmp edx, 0x2808
jne 0x18004728f
lea rax, [r9 + 1]
cmp rax, qword [rbx + 0x10]
jae 0x18004723f
mov eax, r8d
mov ecx, r13d
and ecx, 0xf
shr eax, 6
lea eax, [rax + rcx*4]
movzx eax, byte [rax + rdi]
mov byte [r15], al
mov byte [r15 + 1], 0x3d
jmp 0x18004728b
mov al, 0x3d
mov byte [r15], al
mov byte [r15 + 1], al
jmp 0x18004728b
movzx ecx, byte [r12]
lea rax, [r9 + 1]
cmp rax, qword [rbx + 0x10]
jae 0x180047261
movzx r13d, byte [r12 + 1]
jmp 0x180047264
xor r13d, r13d
mov rax, rcx
xor r8d, r8d
shr rax, 2
and ecx, 3
shl ecx, 4
movzx eax, byte [rax + rdi]
mov byte [r15], al
mov eax, r13d
shr eax, 4
add ecx, eax
movzx ecx, byte [rcx + rdi]
mov byte [r15 + 1], cl
add r15, 2
add edx, 0x2751
cmp edx, 0x4ea2
jbe 0x180047208
mov dword [rsp + 0x38], r8d
jmp 0x180046c20
movzx eax, word [0x18009da30]
mov word [0x1800aa9da], ax
movzx eax, byte [0x18009da32]
mov byte [0x1800aa9dc], al
mov dword [0x1800aa9dd], 0x77767574
jmp case.0x180046941.67
lea rax, [0x1800a8b90]
mov dword [rsp + 0x58], 0xa
mov qword [rbp + 0xc8], rax
lea r9, [rsp + 0x58]
lea rax, [0x1800a8ba0]
mov dword [rbp + 0x1e0], reloc.OLEAUT32.dll_SafeArrayLock
mov qword [rbp + 0xd0], rax
lea rdx, [rbp + 0xd0]
lea rax, [rbp + 0x1e0]
mov r8d, 0xb6
lea rcx, [rbp + 0xc8]
mov qword [rsp + 0x20], rax
call fcn.1800361b0
mov ecx, 2
add ebx, eax
call fcn.180066670
mov rcx, rax
mov dword [rsp + 0x20], ebx
xor r9d, r9d
lea r8, [0x180096248]
lea rdx, str._Z19convert_ulong16_rteDv16_s
call fcn.1800010d0
mov eax, ebx
jmp 0x18004735d
mov eax, r14d
mov r14, qword [rsp + 0x298]
mov r13, qword [rsp + 0x2a0]
mov r12, qword [rsp + 0x2a8]
mov rdi, qword [rsp + 0x2b0]
mov rbx, qword [rsp + 0x2b8]
add rsp, 0x2c0
pop r15
pop rsi
pop rbp
ret