Function at 0x18002d8c0
Capabilities:
Encode data using base64

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1c8]
sub rsp, 0x2c8
mov rax, qword [0x18007cf38]
xor rax, rsp
mov qword [rbp + 0x1b0], rax
mov eax, dword [rbp + 0x230]
mov r12, r8
mov qword [rbp - 0x68], r9
mov r13, rcx
mov qword [rbp - 0x78], r8
mov qword [rsp + 0x38], rdx
lea ebx, [rax + 0xb]
mov dword [rsp + 0x30], ebx
cmp eax, ebx
mov ebx, dword [rsp + 0x58]
jae 0x18002dda9
mov rsi, qword [0x180081480]
lea rdi, [0x180000000]
mov ecx, dword [rsp + 0x30]
movabs r14, 0xaaaaaaaaaaaaaaab
mov r15d, 0x54
mov dword [rsp + 0x40], ebx
mov r10d, 0x72
add eax, 0xffffffaf
lea r11d, [r10 + 2]
lea r8d, [r10 - 4]
cmp eax, 0x18
ja case.default.0x18002d963
mov ecx, dword [rdi + rax*4 + 0x2e7c8]
add rcx, rdi
jmp rcx
mov rax, qword [r13 + 0x70]
mov qword [rbp - 0x38], r13
cmp qword [r13 + 0x78], rax
jne case.0x18002d963.85
mov qword [rdx], 0
mov eax, 1
jmp 0x18002ddab
mov rcx, qword [r13 + 0x10]
lea rax, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_
mov qword [0x180081480], rax
add rcx, 2
mov rax, r14
xor r8d, r8d
mul rcx
mov rcx, r12
shr rdx, 1
shl rdx, 2
call fcn.180044fa0
mov rdx, qword [rsp + 0x38]
mov r9, qword [rbp - 0x68]
mov rsi, qword [0x180081480]
jmp case.0x18002d963.85
mov r14, qword [rbp - 0x40]
cmp r14, qword [r13 + 0x10]
jae 0x18002dd85
mov r12, qword [rsp + 0x60]
mov edi, r15d
mov ebx, dword [rsp + 0x78]
nop word [rax + rax]
cmp edi, 0x2d2
ja 0x18002db7f
je 0x18002db68
cmp edi, 0x176
ja 0x18002daab
je 0x18002da89
mov eax, edi
sub eax, 0x54
je 0x18002da7b
sub eax, 0x3a
je 0x18002da71
sub eax, 0x3a
je 0x18002da55
sub eax, 0x3a
je 0x18002da4b
cmp eax, 0x3a
jne 0x18002dd55
mov eax, 0x6f
mov word [rbp + 0x67], ax
mov eax, 0x6167
mov word [rbp + 0x68], r8w
mov word [rbp + 0x69], ax
jmp 0x18002dd55
mov word [rbp + 0x66], r11w
jmp 0x18002dd55
mov eax, 0x61
mov word [rbp + 0x63], ax
mov eax, 0x3f
mov word [rbp + 0x64], r10w
mov word [rbp + 0x65], ax
jmp 0x18002dd55
mov word [rbp + 0x62], r10w
jmp 0x18002dd55
mov eax, 0x694b
mov word [rbp + 0x60], ax
jmp 0x18002dd55
movzx eax, word [0x18006bae7]
mov word [rbp + 0x70], ax
movzx eax, byte [0x18006bae9]
mov byte [rbp + 0x72], al
mov byte [rbp + 0x6b], 0
mov byte [rbp + 0x73], 0
jmp 0x18002dd55
mov eax, edi
sub eax, 0x1b0
je 0x18002db31
sub eax, 0x3a
je 0x18002db07
sub eax, 0x3a
je 0x18002daee
sub eax, 0x3a
je 0x18002dadd
cmp eax, 0x3a
jne 0x18002dd55
mov eax, 0x65
mov word [rbp + 0x86], ax
jmp 0x18002dd55
mov eax, 0x535f
mov word [rbp + 0x84], ax
jmp 0x18002dd55
mov eax, 0x50
mov word [rbp + 0x82], r15w
mov word [rbp + 0x83], ax
jmp 0x18002dd55
movzx eax, word [0x18006ba90]
mov word [rbp + 0x77], ax
movzx eax, byte [0x18006ba92]
mov byte [rbp + 0x79], al
mov eax, 0x5448
mov word [rbp + 0x80], ax
mov byte [rbp + 0x7a], 0
jmp 0x18002dd55
mov r8d, 3
mov word [rbp + 0x73], 0x62
lea rdx, [0x18006bb09]
lea rcx, [rbp + 0x70]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncat]
mov rsi, qword [0x180081480]
mov r8d, 0x6e
lea r10d, [r8 + 4]
lea r11d, [r8 + 6]
jmp 0x18002dd55
mov word [rbp + 0x87], r11w
mov dword [rbp + 0x88], 0x73614c
jmp 0x18002dd55
cmp edi, 0x42e
ja 0x18002dc25
je 0x18002dc18
mov eax, edi
sub eax, 0x30c
je 0x18002dbfd
sub eax, 0x3a
je 0x18002dbee
sub eax, 0x3a
je 0x18002dbe1
sub eax, 0x3a
je 0x18002dbc9
cmp eax, 0x3a
jne 0x18002dd55
mov rax, qword [rbp - 0x70]
mov qword [rbp + 0x30], 0
movzx ecx, byte [rax]
mov dword [rbp - 0x58], ecx
jmp 0x18002dd55
mov eax, 0x6565
mov byte [rbp + 0x98], 0
mov word [rbp + 0x96], ax
jmp 0x18002dd55
mov word [rbp + 0x95], r10w
jmp 0x18002dd55
mov dword [rbp + 0x91], 0x466f5472
jmp 0x18002dd55
mov eax, 0x4274
mov dword [rbp + 0x8d], 0x65666675
mov word [rbp + 0x8b], ax
jmp 0x18002dd55
mov qword [rbp + 0x28], 0
jmp 0x18002dd55
mov eax, edi
sub eax, 0x468
je 0x18002dd37
sub eax, 0x74
je 0x18002dcf8
sub eax, 0x3a
je 0x18002dce8
sub eax, 0x3a
je 0x18002dca6
cmp eax, 0x3a
jne 0x18002dd55
xor r9d, r9d
mov qword [rsp + 0x20], 0
lea r8, [rbp + 0xa0]
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0x60]
call qword [sym.imp.dbghelp.dll_FindDebugInfoFileEx]
mov eax, dword [rbp - 0x60]
lea r9, [rbp + 0x40]
mov rdx, qword [rbp + 0x28]
lea r8, [rbp + 0x70]
mov rcx, qword [rbp + 0x30]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0x5c]
mov dword [rsp + 0x20], eax
call sub.IMM32.dll_ImmGetConversionListA
mov byte [r12], 0x3d
inc r12
jmp 0x18002db4e
lea rax, [r14 + 1]
cmp rax, qword [r13 + 0x10]
jae 0x18002dcd6
mov eax, dword [rsp + 0x58]
mov ecx, ebx
shr eax, 6
and ecx, 0xf
mov dword [rbp - 0x60], 1
lea eax, [rax + rcx*4]
movzx eax, byte [rax + rsi]
mov byte [r12], al
inc r12
jmp 0x18002dd55
mov al, 0x3d
mov dword [rbp - 0x60], 1
mov byte [r12], al
inc r12
jmp 0x18002dd55
mov dword [rbp + 0x40], 0x1c
mov dword [rbp - 0x5c], 0x1c
jmp 0x18002dd55
mov edx, dword [rbp - 0x58]
xorps xmm0, xmm0
mov ecx, edx
mov eax, edx
shr rax, 2
and ecx, 3
shl ecx, 4
movzx eax, byte [rax + rsi]
mov byte [r12], al
xor eax, eax
mov qword [rbp + 0x50], rax
mov dword [rbp + 0x58], eax
mov eax, ebx
shr eax, 4
add ecx, eax
movups xmmword [rbp + 0x40], xmm0
movzx ecx, byte [rcx + rsi]
mov byte [r12 + 1], cl
add r12, 2
jmp 0x18002dd55
lea rax, [r14 + 1]
cmp rax, qword [r13 + 0x10]
jae 0x18002dd4b
mov rax, qword [rbp - 0x70]
movzx ebx, byte [rax + 1]
jmp 0x18002dd4d
xor ebx, ebx
mov dword [rsp + 0x58], 0
add edi, 0x3a
cmp edi, 0x5c4
jb 0x18002d9f0
mov dword [rsp + 0x78], ebx
mov ebx, dword [rsp + 0x40]
mov qword [rsp + 0x60], r12
mov r12, qword [rbp - 0x78]
mov r9, qword [rbp - 0x68]
lea rdi, [0x180000000]
mov rdx, qword [rsp + 0x38]
movabs r14, 0xaaaaaaaaaaaaaaab
mov ecx, dword [rsp + 0x30]
mov eax, dword [rbp + 0x230]
inc eax
mov dword [rbp + 0x230], eax
cmp eax, ecx
jb 0x18002d93f
mov eax, ebx
mov rcx, qword [rbp + 0x1b0]
xor rcx, rsp
call fcn.180065820
add rsp, 0x2c8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov dword [rsp + 0x4c], 0
jmp case.0x18002d963.85
mov r8, qword [rbp - 0x48]
xor eax, eax
mov qword [rbp - 0x40], rax
test r8, r8
je case.0x18002d963.85
mov r12, qword [rsp + 0x60]
lea rcx, [r8 - 1]
mov rax, r14
mul rcx
shr rdx, 1
inc rdx
mov qword [rsp + 0x70], rdx
lea rax, [rdx + rdx*2]
mov qword [rbp - 0x40], rax
nop dword [rax]
mov rdx, qword [rbp - 0x70]
mov r8d, 0x26
nop word [rax + rax]
mov eax, r8d
sub eax, 0x26
je 0x18002de4c
sub eax, 0x2e
je 0x18002de38
cmp eax, 0x2e
jne 0x18002de94
add rdx, 3
jmp 0x18002de94
movzx eax, byte [rdx + 2]
and eax, 0x3f
movzx eax, byte [rax + rsi]
mov byte [r12], al
inc r12
jmp 0x18002de94
movzx eax, byte [rdx]
shr rax, 2
movzx eax, byte [rax + rsi]
mov byte [r12], al
movzx ecx, byte [rdx]
movzx eax, byte [rdx + 1]
and ecx, 3
shr eax, 4
shl ecx, 4
add ecx, eax
movzx ecx, byte [rcx + rsi]
mov byte [r12 + 1], cl
movzx eax, byte [rdx + 1]
movzx ecx, byte [rdx + 2]
and eax, 0xf
shr ecx, 6
lea eax, [rcx + rax*4]
movzx eax, byte [rax + rsi]
mov byte [r12 + 2], al
add r12, 3
add r8d, 0x2e
cmp r8d, 0xb0
jb 0x18002de20
sub qword [rsp + 0x70], 1
mov qword [rbp - 0x70], rdx
mov qword [rsp + 0x60], r12
jne 0x18002de10
mov r12, qword [rbp - 0x78]
mov rdx, qword [rsp + 0x38]
jmp case.0x18002d963.85
mov eax, dword [r9]
dec eax
cmp eax, 0x11
ja case.0x18002d963.85
cdqe
mov ecx, dword [rdi + rax*4 + 0x2e82c]
add rcx, rdi
jmp rcx
mov r15d, 0xde
nop word [rax + rax]
mov eax, r15d
sub eax, 0xde
je 0x18002dff9
sub eax, 1
je 0x18002df1e
cmp eax, 1
jne 0x18002e013
mov eax, dword [r12]
cdq
and edx, 7
add eax, edx
sar eax, 3
jmp 0x18002ddab
xor r14d, r14d
cmp dword [r12], r14d
jle 0x18002e013
lea rsi, [r13 + 6]
nop
mov r12, qword [rsp + 0x38]
mov edi, reloc.SHLWAPI.dll_SHRegGetIntW
nop word [rax + rax]
mov eax, edi
sub eax, 0x117
je 0x18002dfa8
cmp eax, 1
jne 0x18002dfd3
movzx eax, byte [rsi]
movzx ecx, byte [rsi + 1]
shl rcx, 8
or rcx, rax
movzx eax, byte [rsi - 1]
shl rcx, 8
or rcx, rax
movzx eax, byte [rsi - 2]
shl rcx, 8
or rcx, rax
movzx eax, byte [rsi - 3]
shl rcx, 8
or rcx, rax
movzx eax, byte [rsi - 4]
shl rcx, 8
or rcx, rax
movzx eax, byte [rsi - 5]
shl rcx, 8
or rcx, rax
movzx eax, byte [rsi - 6]
shl rcx, 8
or rcx, rax
mov qword [rbp + 0x38], rcx
jmp 0x18002dfd3
movsd xmm0, qword [rbp + 0x38]
lea rax, [rsp + 0x48]
mov r8d, 0x120
movsd qword [rsp + 0x48], xmm0
lea rdx, [rbp - 0x30]
mov qword [rbp - 0x28], rax
lea rcx, [rbp - 0x28]
mov qword [rbp - 0x30], r12
call fcn.18000fc20
dec edi
cmp edi, 0x116
ja 0x18002df40
mov r12, qword [rbp - 0x78]
add r14d, 8
add rsi, 8
cmp r14d, dword [r12]
jl 0x18002df30
jmp 0x18002e013
mov eax, dword [r12]
and eax, 0x80000007
jge 0x18002e00b
dec eax
or eax, 0xfffffff8
inc eax
test eax, eax
jne case.0x18002d963.105
inc r15d
cmp r15d, 0xe1
jb 0x18002def0
mov r15d, 0xf8
nop dword [rax]
mov eax, r15d
sub eax, 0xf6
je 0x18002dda9
sub eax, 1
je 0x18002e116
cmp eax, 1
jne 0x18002e129
mov ecx, dword [r12]
mov eax, ecx
and eax, 0x80000003
jge 0x18002e064
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne case.0x18002d963.105
xor r14d, r14d
test ecx, ecx
jle 0x18002e129
lea rsi, [r13 + 2]
nop dword [rax + rax]
mov r12, qword [rsp + 0x38]
mov edi, 0x66
nop word [rax + rax]
cmp edi, 0x66
je 0x18002e0bf
cmp edi, 0x1cb0
jne 0x18002e0f0
lea rax, [rsp + 0x48]
mov qword [rbp - 0x20], r12
mov r8d, 0x120
mov qword [rbp - 0x18], rax
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x18]
call fcn.18000fc20
jmp 0x18002e0f0
movzx eax, byte [rsi]
movzx ecx, byte [rsi + 1]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsi - 1]
shl ecx, 8
or ecx, eax
movzx eax, byte [rsi - 2]
shl ecx, 8
or ecx, eax
mov dword [rsp + 0x70], ecx
movss xmm0, dword [rsp + 0x70]
cvtps2pd xmm0, xmm0
movsd qword [rsp + 0x48], xmm0
add edi, 0x1c4a
cmp edi, 0x3894
jbe 0x18002e090
mov r12, qword [rbp - 0x78]
add r14d, 4
add rsi, 4
cmp r14d, dword [r12]
jl 0x18002e080
jmp 0x18002e129
mov eax, dword [r12]
cdq
and edx, 3
add eax, edx
sar eax, 2
mov ebx, eax
mov dword [rsp + 0x40], eax
dec r15d
cmp r15d, 0xf5
ja 0x18002e030
mov rdx, qword [rsp + 0x38]
mov esi, 0x10
cmp esi, 0x10
je 0x18002e159
cmp esi, 0xca
je 0x18002dda9
jmp 0x18002e1e7
mov ecx, dword [r12]
mov eax, ecx
and eax, 0x80000003
jge 0x18002e16d
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne case.0x18002d963.105
xor edi, edi
test ecx, ecx
jle 0x18002e1d6
lea rbx, [r13 + 2]
nop
movzx eax, byte [rbx]
mov r8d, 0x120
movzx ecx, byte [rbx + 1]
shl ecx, 8
or ecx, eax
mov qword [rbp - 0x10], rdx
movzx eax, byte [rbx - 1]
lea rdx, [rbp - 0x10]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx - 2]
shl ecx, 8
or ecx, eax
lea rax, [rsp + 0x48]
mov dword [rsp + 0x48], ecx
lea rcx, [rbp - 8]
mov qword [rbp - 8], rax
call fcn.18000fc20
mov ecx, dword [r12]
lea rbx, [rbx + 4]
mov rdx, qword [rsp + 0x38]
add edi, 4
cmp edi, ecx
jl 0x18002e180
mov eax, ecx
cdq
and edx, 3
add eax, edx
sar eax, 2
mov ebx, eax
mov dword [rsp + 0x40], eax
mov rdx, qword [rsp + 0x38]
add esi, 0xba
cmp esi, 0x184
jb 0x18002e143
mov r14d, StrCmpCW
mov dword [rsp + 0x70], r14d
nop dword [rax]
cmp r14d, 0x97
je 0x18002e2fa
cmp r14d, 0x5e6
je 0x18002e238
cmp r14d, 0xb35
je 0x18002dda9
jmp 0x18002e314
mov eax, dword [r12]
xor esi, esi
test eax, eax
jle 0x18002e2e9
lea rdi, [r13 + 2]
mov r14d, 0x6e
mov r12, qword [rsp + 0x38]
mov ebx, r14d
cmp ebx, r14d
jne 0x18002e2c2
movzx eax, byte [rdi]
lea rdx, [rbp]
movzx ecx, byte [rdi + 1]
mov r8d, 0x120
shl ecx, 8
or ecx, eax
mov qword [rbp], r12
movzx eax, byte [rdi - 1]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi - 2]
shl ecx, 8
or ecx, eax
mov dword [rsp + 0x48], ecx
movzx eax, byte [rdi + 4]
movzx ecx, byte [rdi + 5]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 3]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 2]
shl ecx, 8
or ecx, eax
lea rax, [rsp + 0x48]
mov dword [rsp + 0x4c], ecx
lea rcx, [rbp + 8]
mov qword [rbp + 8], rax
call fcn.18000fc20
add ebx, 0x53
cmp ebx, 0xc1
jb 0x18002e258
mov r12, qword [rbp - 0x78]
add esi, 8
add rdi, 8
mov eax, dword [r12]
cmp esi, eax
jl 0x18002e250
mov r14d, dword [rsp + 0x70]
cdq
and edx, 7
add eax, edx
sar eax, 3
mov ebx, eax
mov dword [rsp + 0x40], eax
jmp 0x18002e314
mov eax, dword [r12]
and eax, 0x80000007
jge 0x18002e30c
dec eax
or eax, 0xfffffff8
inc eax
test eax, eax
jne case.0x18002d963.105
add r14d, 0x54f
mov dword [rsp + 0x70], r14d
cmp r14d, 0xfed
jbe 0x18002e210
mov rdx, qword [rsp + 0x38]
mov r14d, 0x77
cmp r14d, 0x77
je 0x18002e366
cmp r14d, 0x12c
je 0x18002e359
cmp r14d, 0x1e1
je 0x18002dda9
jmp 0x18002e469
mov ebx, dword [rsp + 0x44]
mov dword [rsp + 0x40], ebx
jmp 0x18002e469
xor ecx, ecx
mov dword [rsp + 0x44], ecx
cmp dword [r12], ecx
jle 0x18002e469
nop word [rax + rax]
mov esi, pe_nt_image_headers64
nop word [rax + rax]
mov eax, esi
sub eax, 0x10e
je 0x18002e445
sub eax, 1
je 0x18002e413
cmp eax, 1
jne 0x18002e44b
cmp dword [r12], 0xa
jl 0x18002e3cf
mov r8d, 0x10c
lea rcx, [rsp + 0x48]
mov rdx, r13
call fcn.180028220
mov ecx, dword [rsp + 0x44]
mov dword [rsp + 0x7c], eax
jmp 0x18002e44b
mov edi, 0x113
mov eax, edi
sub eax, 0x113
je 0x18002e403
cmp eax, 1
jne 0x18002e403
mov r8d, 0x10c
lea rcx, [rsp + 0x48]
mov rdx, r13
call fcn.180028220
mov dword [rsp + 0x7c], eax
cmp eax, dword [r12]
jg case.0x18002d963.105
inc edi
cmp edi, 0x115
jb 0x18002e3d4
mov ecx, dword [rsp + 0x44]
jmp 0x18002e44b
lea rax, [rsp + 0x48]
mov qword [rbp + 0x10], rdx
lea rdx, [rbp + 0x10]
mov qword [rbp + 0x18], rax
mov r8d, 0x120
lea rcx, [rbp + 0x18]
call fcn.18000fc20
movsxd rcx, dword [rsp + 0x7c]
add r13, rcx
sub dword [r12], ecx
mov ecx, dword [rsp + 0x44]
jmp 0x18002e44b
inc ecx
mov dword [rsp + 0x44], ecx
mov rdx, qword [rsp + 0x38]
dec esi
cmp esi, 0x10d
ja 0x18002e390
cmp dword [r12], 0
jg 0x18002e380
mov rdx, qword [rsp + 0x38]
add r14d, 0xb5
cmp r14d, 0x296
jb 0x18002e338
mov ecx, 0xd2
mov eax, ecx
sub eax, 0xd2
je 0x18002e509
cmp eax, 1
jne 0x18002e511
cmp dword [r12], 0
jle 0x18002e7bc
mov edi, dword [rsp + 0x58]
nop dword [rax]
nop dword [rax + rax]
mov esi, 0x60
mov eax, esi
sub eax, 0x5e
je 0x18002e79d
sub eax, 1
je 0x18002e771
cmp eax, 1
jne 0x18002e7a1
cmp dword [r12], 0xa
jl 0x18002e716
mov r8d, 0x10c
lea rcx, [rsp + 0x48]
mov rdx, r13
call fcn.180028220
xor r8d, r8d
lea rdx, [rsp + 0x48]
mov ecx, 0x97
mov edi, eax
call fcn.180028870
jmp 0x18002e7a1
mov dword [rsp + 0x68], 0
inc ecx
cmp ecx, 0xd4
jb 0x18002e487
mov r14d, 0xa
cmp r14d, 0xa
je 0x18002e53e
cmp r14d, 0x3a
jne 0x18002e65d
mov eax, dword [rsp + 0x6c]
jmp 0x18002ddab
xor ecx, ecx
mov dword [rsp + 0x6c], ecx
cmp dword [r12], ecx
jle 0x18002e65d
nop
mov esi, 0x5c
mov eax, esi
sub eax, 0x5c
je 0x18002e585
sub eax, 0x48
je 0x18002e575
cmp eax, 0x48
jne 0x18002e643
inc ecx
mov dword [rsp + 0x6c], ecx
jmp 0x18002e643
movsxd rdi, dword [rbp - 0x80]
add r13, rdi
sub dword [r12], edi
jmp 0x18002e643
cmp dword [r12], 0xa
jl 0x18002e5b9
mov r8d, 0x10c
lea rcx, [rsp + 0x48]
mov rdx, r13
call fcn.180028220
xor r9d, r9d
mov dword [rbp - 0x80], eax
xor r8d, r8d
lea rdx, [rsp + 0x48]
mov ecx, 0xeb
call fcn.1800258e0
jmp 0x18002e61a
mov edi, 0xb
nop
cmp edi, 0xb
je 0x18002e60c
cmp edi, 0x3c8
je 0x18002e5ec
cmp edi, 0x785
jne 0x18002e60c
xor r9d, r9d
lea rdx, [rsp + 0x48]
xor r8d, r8d
mov ecx, 0xeb
call fcn.1800258e0
jmp 0x18002e60c
mov r8d, 0x10c
lea rcx, [rsp + 0x48]
mov rdx, r13
call fcn.180028220
mov dword [rbp - 0x80], eax
cmp eax, dword [r12]
jg case.0x18002d963.105
add edi, 0x3bd
cmp edi, 0xb37
jbe 0x18002e5c0
lea rax, [rsp + 0x48]
mov r8d, 0x120
mov qword [rbp - 0x50], rax
lea rdx, [rbp + 0x20]
mov rax, qword [rsp + 0x38]
lea rcx, [rbp - 0x50]
mov qword [rbp + 0x20], rax
call fcn.18000fc20
mov ecx, dword [rsp + 0x6c]
add esi, 0x48
cmp esi, 0x134
jb 0x18002e555
cmp dword [r12], 0
jg 0x18002e550
add r14d, 0x30
cmp r14d, 0x6a
jb 0x18002e525
mov rsi, qword [0x180081480]
mov r15d, 0x54
jmp 0x18002dd75
cmp qword [r13 + 0x18], 0x10
mov qword [rbp - 0x70], r13
jb 0x18002e690
mov rax, qword [r13]
mov qword [rbp - 0x70], rax
cmp qword [r12 + 0x18], 0x10
mov qword [rsp + 0x60], r12
jb 0x18002e6a6
mov rax, qword [r12]
mov qword [rsp + 0x60], rax
mov rax, r14
mul qword [r13 + 0x10]
shr rdx, 1
lea rax, [rdx + rdx*2]
mov rdx, qword [rsp + 0x38]
mov qword [rbp - 0x48], rax
jmp case.0x18002d963.85
mov rdi, qword [rbp - 0x38]
mov r8, qword [r9]
mov rdx, qword [rdi + 0x78]
mov rax, qword [rdi + 0x70]
sub rax, rdx
cmp r8, rax
jbe 0x18002e6e3
mov qword [r9], rax
mov r8, rax
mov rdx, qword [rdi + 0x78]
mov rcx, r12
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rsp + 0x38]
lea rdi, [0x180000000]
mov r9, qword [rbp - 0x68]
jmp case.0x18002d963.85
mov rax, qword [r9]
mov r8, qword [rbp - 0x38]
add qword [r8 + 0x78], rax
mov rax, qword [r9]
mov qword [rdx], rax
jmp case.0x18002d963.85
mov ebx, 0x8a
nop dword [rax + rax]
mov eax, ebx
sub eax, 0x89
je 0x18002e753
cmp eax, 1
jne 0x18002e765
mov r8d, 0x10c
lea rcx, [rsp + 0x48]
mov rdx, r13
call fcn.180028220
mov edi, eax
cmp eax, dword [r12]
jle 0x18002e765
mov eax, 0xffffffff
jmp 0x18002ddab
xor r8d, r8d
lea rdx, [rsp + 0x48]
mov ecx, 0x97
call fcn.180028870
dec ebx
cmp ebx, 0x88
ja 0x18002e720
jmp 0x18002e7a1
lea rax, [rsp + 0x48]
mov qword [rbp - 0x48], rdx
lea rdx, [rbp - 0x48]
mov qword [rbp - 0x50], rax
mov r8d, 0x120
lea rcx, [rbp - 0x50]
call fcn.18000fc20
movsxd rax, edi
add r13, rax
sub dword [r12], edi
jmp 0x18002e7a1
inc dword [rsp + 0x68]
mov rdx, qword [rsp + 0x38]
dec esi
cmp esi, 0x5d
ja 0x18002e4b5
cmp dword [r12], 0
jg 0x18002e4b0
mov eax, dword [rsp + 0x68]
jmp 0x18002ddab