Function at 0x1402e8dc0
Capabilities:
Encrypt data using camellia

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x1d0]
sub rsp, 0x2d0
mov rax, qword [0x140398b38]
xor rax, rsp
mov qword [rbp + 0x1c0], rax
xorps xmm0, xmm0
mov r15d, r8d
lea rsi, [rcx + 4]
mov dword [rsp + 0x58], r15d
mov rdi, rdx
mov rbx, rcx
mov rcx, rsi
xor edx, edx
mov r8d, 0x110
movups xmmword [rbp + 0x100], xmm0
movups xmmword [rbp + 0x110], xmm0
movups xmmword [rbp + 0x120], xmm0
movups xmmword [rbp + 0x130], xmm0
call fcn.1402612c0
mov eax, r15d
sub eax, 0x80
je 0x1402e90b1
sub eax, 0x40
je 0x1402e8e4f
cmp eax, 0x40
je 0x1402e8e4f
mov eax, 0xffffffdc
jmp 0x1402ea48b
lea r9, [0x1403755c5]
mov qword [rbp - 0x38], 0xb0
mov qword [rbp - 0x30], r9
lea rax, [0x140375501]
mov qword [rsp + 0x50], rax
lea r9, [0x1403755c6]
mov qword [rbp - 0x20], r9
lea rax, [0x140375502]
mov qword [rsp + 0x48], rax
lea r9, [0x1403755c7]
mov qword [rbp - 0x10], r9
lea rax, [0x140375503]
mov qword [rsp + 0x40], rax
lea r9, [0x1403755c8]
mov qword [rbp], r9
lea rax, [0x140375504]
mov qword [rsp + 0x60], rax
lea r9, [0x1403755c9]
mov qword [rbp + 0x10], r9
lea rax, [0x140375505]
mov qword [rsp + 0x68], rax
lea r9, [0x1403755ca]
mov qword [rbp + 0x20], r9
lea rax, [0x140375506]
mov qword [rsp + 0x70], rax
lea r9, [0x1403755cb]
mov qword [rbp + 0x30], r9
lea rax, [0x140375507]
mov qword [rsp + 0x78], rax
lea r9, [0x1403755cc]
mov qword [rbp + 0x40], r9
lea rax, [0x140375508]
mov qword [rbp - 0x80], rax
lea r9, [0x1403755cd]
mov qword [rbp + 0x50], r9
lea rax, [0x140375509]
mov qword [rbp - 0x78], rax
lea r9, [0x1403755ce]
mov qword [rbp + 0x60], r9
lea rax, [0x14037550a]
mov qword [rbp - 0x70], rax
lea r9, [0x1403755cf]
mov qword [rbp + 0x70], r9
lea rax, [0x14037550b]
mov qword [rbp - 0x68], rax
lea r9, [0x1403755d0]
mov qword [rbp + 0x80], r9
lea rax, [0x14037550c]
mov qword [rbp - 0x60], rax
lea r9, [0x1403755d1]
mov qword [rbp + 0x90], r9
lea rax, [0x14037550d]
lea r9, [0x1403755d2]
mov qword [rbp - 0x58], rax
mov qword [rbp + 0xa0], r9
lea r10, [0x1403755d5]
lea r9, [0x1403755d3]
mov qword [rbp + 0xd0], r10
mov qword [rbp + 0xb0], r9
lea rax, [0x14037550e]
lea r9, [0x1403755d4]
mov qword [rbp - 0x50], rax
mov ecx, 4
mov qword [rbp + 0xc0], r9
lea r9, [0x1403755d7]
mov qword [rbp - 0x28], 0xb4
lea r10, [0x1403755d6]
mov qword [rbp + 0xf0], r9
lea rdx, [0x1403755c4]
mov qword [rbp + 0xe0], r10
lea r14d, [rcx + 0x4c]
mov qword [rbp - 0x40], rdx
lea rax, [0x14037550f]
mov qword [rbp - 0x18], 0xb8
mov qword [rbp - 8], 0xbc
mov qword [rbp + 8], 0xc0
mov qword [rbp + 0x18], 0xc4
mov qword [rbp + 0x28], 0xc8
mov qword [rbp + 0x38], Ordinal_208
mov qword [rbp + 0x48], reloc.WLDAP32.dll_Ordinal_208
mov qword [rbp + 0x58], Ordinal_216
mov qword [rbp + 0x68], reloc.WLDAP32.dll_Ordinal_216
mov qword [rbp + 0x78], 0xdc
mov qword [rbp + 0x88], 0xe0
mov qword [rbp + 0x98], 0xe4
mov qword [rbp + 0xa8], 0xe8
mov qword [rbp + 0xb8], 0xec
mov qword [rbp + 0xc8], 0xf0
mov qword [rbp + 0xd8], 0xf4
mov qword [rbp + 0xe8], 0xf8
mov qword [rbp + 0xf8], 0xfc
jmp 0x1402e930d
lea rax, [0x1403755b1]
mov qword [rbp - 0x38], Ordinal_133
mov qword [rbp - 0x30], rax
mov ecx, 3
lea rax, [0x1403755b2]
mov qword [rbp - 0x28], Ordinal_133
mov qword [rbp - 0x20], rax
xor r14d, r14d
lea rax, [0x1403755b3]
mov qword [rbp - 0x18], Ordinal_142
mov qword [rbp - 0x10], rax
lea rax, [0x1403755b4]
mov qword [rbp], rax
lea rax, [0x1403755b5]
mov qword [rbp + 0x10], rax
lea rax, [0x1403755b6]
mov qword [rbp + 0x20], rax
lea rax, [0x1403755b7]
mov qword [rbp + 0x30], rax
lea rax, [0x1403755b8]
mov qword [rbp + 0x40], rax
lea rax, [0x1403755b9]
mov qword [rbp + 0x50], rax
lea rax, [0x1403755ba]
mov qword [rbp + 0x60], rax
lea rax, [0x1403755bb]
mov qword [rbp + 0x70], rax
lea rax, str._v_b_t_n
mov qword [rbp + 0x80], rax
lea rax, [0x1403755bd]
mov qword [rbp + 0x90], rax
lea rax, [0x1403755be]
mov qword [rbp + 0xa0], rax
lea rax, [0x1403755bf]
mov qword [rbp + 0xb0], rax
lea rax, [0x1403755c0]
mov qword [rbp + 0xc0], rax
lea rax, [0x1403755c1]
mov qword [rbp + 0xd0], rax
lea rax, [0x1403755c2]
mov qword [rbp + 0xe0], rax
lea rax, [0x1403755c3]
mov qword [rbp + 0xf0], rax
lea rax, [0x1403755b0]
mov qword [rbp - 0x40], rax
lea rax, [0x1403754f1]
mov qword [rsp + 0x50], rax
lea rax, [0x1403754f2]
mov qword [rsp + 0x48], rax
lea rax, [0x1403754f3]
mov qword [rsp + 0x40], rax
lea rax, [0x1403754f4]
mov qword [rsp + 0x60], rax
lea rax, [0x1403754f5]
mov qword [rsp + 0x68], rax
lea rax, [0x1403754f6]
mov qword [rsp + 0x70], rax
lea rax, [0x1403754f7]
mov qword [rsp + 0x78], rax
lea rax, [0x1403754f8]
mov qword [rbp - 0x80], rax
lea rax, [0x1403754f9]
mov qword [rbp - 0x78], rax
lea rax, [0x1403754fa]
mov qword [rbp - 0x70], rax
lea rax, [0x1403754fb]
mov qword [rbp - 0x68], rax
lea rax, [0x1403754fc]
mov qword [rbp - 0x60], rax
lea rax, [0x1403754fd]
mov qword [rbp - 0x58], rax
lea rax, [0x1403754fe]
mov qword [rbp - 0x50], rax
lea rax, [0x1403754ff]
mov qword [rbp - 8], Ordinal_145
mov qword [rbp + 8], Ordinal_145
mov qword [rbp + 0x18], __WSAFDIsSet
mov qword [rbp + 0x28], 0x98
mov qword [rbp + 0x38], 0x9c
mov qword [rbp + 0x48], Ordinal_167
mov qword [rbp + 0x58], Ordinal_167
mov qword [rbp + 0x68], 0xa8
mov qword [rbp + 0x78], 0xac
mov qword [rbp + 0x88], 0xb0
mov qword [rbp + 0x98], 0xb4
mov qword [rbp + 0xa8], 0xb8
mov qword [rbp + 0xb8], 0xbc
mov qword [rbp + 0xc8], 0xc0
mov qword [rbp + 0xd8], 0xc4
mov qword [rbp + 0xe8], Ordinal_208
mov qword [rbp + 0xf8], Ordinal_208
mov qword [rsp + 0x308], r12
mov r8, r15
shr r8, 3
mov qword [rsp + 0x310], r13
mov qword [rbp - 0x48], rax
mov dword [rbx], ecx
test r8, r8
je 0x1402e933e
mov rdx, rdi
lea rcx, [rbp + 0x100]
call fcn.140260c10
movzx edx, byte [rbp + 0x117]
movzx r8d, byte [rbp + 0x114]
movzx r9d, byte [rbp + 0x110]
cmp r15d, 0xc0
jne 0x1402e93c0
movzx r15d, byte [rbp + 0x111]
movzx eax, r8b
movzx r12d, byte [rbp + 0x112]
not al
movzx r13d, byte [rbp + 0x113]
movzx ecx, r9b
mov byte [rsp + 0x3b], al
not cl
movzx eax, byte [rbp + 0x115]
not r15b
not al
not r12b
mov byte [rsp + 0x38], al
not r13b
movzx eax, byte [rbp + 0x116]
not al
mov byte [rsp + 0x39], al
movzx eax, dl
not al
mov byte [rsp + 0x3a], al
jmp 0x1402e940b
movzx eax, byte [rbp + 0x11f]
movzx r13d, byte [rbp + 0x11b]
movzx r12d, byte [rbp + 0x11a]
movzx r15d, byte [rbp + 0x119]
movzx ecx, byte [rbp + 0x118]
mov byte [rsp + 0x3a], al
movzx eax, byte [rbp + 0x11e]
mov byte [rsp + 0x39], al
movzx eax, byte [rbp + 0x11d]
mov byte [rsp + 0x38], al
movzx eax, byte [rbp + 0x11c]
mov byte [rsp + 0x3b], al
movzx eax, byte [rbp + 0x101]
xorps xmm0, xmm0
movzx edi, byte [rbp + 0x100]
xorps xmm1, xmm1
movzx ebx, byte [rbp + 0x104]
movzx r11d, byte [rbp + 0x108]
movzx r10d, byte [rbp + 0x10c]
shl edi, 8
or edi, eax
shl ebx, 8
movzx eax, byte [rbp + 0x102]
shl r11d, 8
shl r10d, 8
shl r9d, 8
shl edi, 8
or edi, eax
shl r8d, 8
movzx eax, byte [rbp + 0x103]
shl edi, 8
or edi, eax
mov qword [rbp + 0x150], 0
movzx eax, byte [rbp + 0x105]
or ebx, eax
mov qword [rbp + 0x158], 0
movzx eax, byte [rbp + 0x106]
shl ebx, 8
or ebx, eax
movdqu xmmword [rbp + 0x160], xmm0
movzx eax, byte [rbp + 0x107]
shl ebx, 8
or ebx, eax
mov dword [rbp + 0x190], 0xa09e667f
movzx eax, byte [rbp + 0x109]
or r11d, eax
mov dword [rbp + 0x194], 0x3bcc908b
movzx eax, byte [rbp + 0x10a]
shl r11d, 8
or r11d, eax
mov dword [rbp + 0x198], 0xb67ae858
movzx eax, byte [rbp + 0x10b]
shl r11d, 8
or r11d, eax
mov dword [rbp + 0x19c], 0x4caa73b2
movzx eax, byte [rbp + 0x10d]
or r10d, eax
mov dword [rbp + 0x1a0], 0xc6ef372f
movzx eax, byte [rbp + 0x10e]
shl r10d, 8
or r10d, eax
mov dword [rbp + 0x1a4], 0xe94f82be
movzx eax, byte [rbp + 0x10f]
shl r10d, 8
or r10d, eax
mov dword [rbp + 0x1a8], 0x54ff53a5
movzx eax, byte [rbp + 0x111]
or r9d, eax
mov dword [rbp + 0x1ac], 0xf1d36f1c
movzx eax, byte [rbp + 0x112]
shl r9d, 8
or r9d, eax
mov dword [rbp + 0x1b0], 0x10e527fa
movzx eax, byte [rbp + 0x113]
shl r9d, 8
or r9d, eax
mov dword [rbp + 0x1b4], 0xde682d1d
movzx eax, byte [rbp + 0x115]
or r8d, eax
mov dword [rbp + 0x1b8], 0xb05688c2
movzx eax, byte [rbp + 0x116]
shl r8d, 8
or r8d, eax
mov dword [rbp + 0x1bc], 0xb3e6c1fd
shl r8d, 8
or r8d, edx
movdqu xmmword [rbp + 0x180], xmm1
mov dword [rbp + 0x164], r8d
mov dword [rbp + 0x150], edi
mov dword [rbp + 0x154], ebx
mov dword [rbp + 0x158], r11d
mov dword [rbp + 0x15c], r10d
mov dword [rbp + 0x160], r9d
movzx edx, cl
xor r8d, ebx
movzx ecx, byte [rsp + 0x3b]
xor r9d, edi
shl edx, 8
shl ecx, 8
movzx eax, r15b
or edx, eax
mov dword [rbp + 0x174], r8d
shl edx, 8
lea r8, [rbp + 0x178]
movzx eax, r12b
or edx, eax
mov dword [rbp + 0x170], r9d
shl edx, 8
movzx eax, r13b
or edx, eax
movzx eax, byte [rsp + 0x38]
or ecx, eax
mov dword [rbp + 0x168], edx
movzx eax, byte [rsp + 0x39]
xor edx, r11d
shl ecx, 8
or ecx, eax
mov dword [rbp + 0x178], edx
movzx eax, byte [rsp + 0x3a]
lea rdx, [rbp + 0x190]
shl ecx, 8
or ecx, eax
mov dword [rbp + 0x16c], ecx
xor ecx, r10d
mov dword [rbp + 0x17c], ecx
lea rcx, [rbp + 0x170]
call fcn.1402e80c0
lea r8, [rbp + 0x170]
lea rdx, [rbp + 0x198]
lea rcx, [rbp + 0x178]
call fcn.1402e80c0
movdqu xmm0, xmmword [rbp + 0x150]
lea r8, [rbp + 0x178]
pxor xmm0, xmmword [rbp + 0x170]
lea rdx, [rbp + 0x1a0]
lea rcx, [rbp + 0x170]
movdqu xmmword [rbp + 0x170], xmm0
call fcn.1402e80c0
lea r8, [rbp + 0x170]
lea rdx, [rbp + 0x1a8]
lea rcx, [rbp + 0x178]
call fcn.1402e80c0
cmp dword [rsp + 0x58], 0x80
jbe 0x1402e9757
mov eax, dword [rbp + 0x170]
lea r8, [rbp + 0x188]
xor eax, dword [rbp + 0x160]
lea rdx, [rbp + 0x1b0]
mov dword [rbp + 0x180], eax
lea rcx, [rbp + 0x180]
mov eax, dword [rbp + 0x174]
xor eax, dword [rbp + 0x164]
mov dword [rbp + 0x184], eax
mov eax, dword [rbp + 0x178]
xor eax, dword [rbp + 0x168]
mov dword [rbp + 0x188], eax
mov eax, dword [rbp + 0x17c]
xor eax, dword [rbp + 0x16c]
mov dword [rbp + 0x18c], eax
call fcn.1402e80c0
lea r8, [rbp + 0x180]
lea rdx, [rbp + 0x1b8]
lea rcx, [rbp + 0x188]
call fcn.1402e80c0
mov rdi, qword [rsp + 0x50]
movups xmm0, xmmword [rbp + 0x150]
movups xmmword [rbp + 0x100], xmm0
mov r9d, dword [rbp + 0x10c]
cmp byte [rdi - 1], 0
mov r8d, dword [rbp + 0x108]
mov edx, dword [rbp + 0x104]
mov ecx, dword [rbp + 0x100]
je 0x1402e97c7
mov r10d, ecx
mov eax, edx
shr eax, 0x11
mov r11d, r8d
shl r10d, 0xf
mov ebx, r9d
xor r10d, eax
shr r11d, 0x11
shr ebx, 0x11
mov eax, edx
shl eax, 0xf
mov r12d, r9d
xor r11d, eax
shl r12d, 0xf
mov eax, r8d
shl eax, 0xf
xor ebx, eax
mov eax, ecx
shr eax, 0x11
xor r12d, eax
jmp 0x1402e97e2
mov r12d, dword [rbp + 0x11c]
mov ebx, dword [rbp + 0x118]
mov r11d, dword [rbp + 0x114]
mov r10d, dword [rbp + 0x110]
cmp byte [rdi], 0
je 0x1402e982d
mov edi, ecx
mov eax, edx
shr eax, 2
mov r15d, r8d
shl edi, 0x1e
mov r13d, r9d
xor edi, eax
shr r13d, 2
shr r15d, 2
mov eax, edx
shl eax, 0x1e
xor r15d, eax
mov eax, r8d
shl eax, 0x1e
xor r13d, eax
mov eax, ecx
mov dword [rsp + 0x34], r13d
mov r13d, r9d
shl r13d, 0x1e
shr eax, 2
xor r13d, eax
mov dword [rsp + 0x50], r13d
jmp 0x1402e984e
mov eax, dword [rbp + 0x12c]
mov r15d, dword [rbp + 0x124]
mov edi, dword [rbp + 0x120]
mov dword [rsp + 0x50], eax
mov eax, dword [rbp + 0x128]
mov dword [rsp + 0x34], eax
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0
je 0x1402e98a3
mov r13d, ecx
mov eax, edx
shr eax, 0x13
shl r13d, 0xd
xor r13d, eax
mov eax, r8d
shr eax, 0x13
mov dword [rsp + 0x24], eax
mov eax, edx
shl eax, 0xd
xor dword [rsp + 0x24], eax
mov eax, r9d
shr eax, 0x13
mov dword [rsp + 0x28], eax
mov eax, r8d
shl eax, 0xd
xor dword [rsp + 0x28], eax
mov eax, r9d
shl eax, 0xd
mov dword [rsp + 0x2c], eax
mov eax, ecx
shr eax, 0x13
xor dword [rsp + 0x2c], eax
jmp 0x1402e98c8
mov eax, dword [rbp + 0x13c]
mov r13d, dword [rbp + 0x130]
mov dword [rsp + 0x2c], eax
mov eax, dword [rbp + 0x138]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp + 0x134]
mov dword [rsp + 0x24], eax
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
je 0x1402e9920
mov eax, ecx
shl eax, 0x1c
mov dword [rsp + 0x30], eax
mov eax, edx
shr eax, 4
xor dword [rsp + 0x30], eax
mov eax, r8d
shr eax, 4
mov dword [rsp + 0x20], eax
mov eax, edx
shl eax, 0x1c
xor dword [rsp + 0x20], eax
mov eax, r9d
shr eax, 4
mov dword [rsp + 0x40], eax
mov eax, r8d
shl eax, 0x1c
xor dword [rsp + 0x40], eax
mov eax, r9d
shl eax, 0x1c
mov dword [rsp + 0x48], eax
mov eax, ecx
shr eax, 4
xor dword [rsp + 0x48], eax
jmp 0x1402e9948
mov eax, dword [rbp + 0x14c]
mov dword [rsp + 0x48], eax
mov eax, dword [rbp + 0x148]
mov dword [rsp + 0x40], eax
mov eax, dword [rbp + 0x144]
mov dword [rsp + 0x20], eax
mov eax, dword [rbp + 0x140]
mov dword [rsp + 0x30], eax
lea rax, [0x140375510]
movsx rax, byte [r14 + rax]
cmp al, 0xff
je 0x1402e995b
mov dword [rsi + rax*4], ecx
lea rax, [0x140375510]
movsx rax, byte [r14 + rax + 1]
cmp al, 0xff
je 0x1402e996f
mov dword [rsi + rax*4], edx
lea rdx, [0x140375510]
movsx rax, byte [r14 + rdx + 2]
cmp al, 0xff
je 0x1402e9984
mov dword [rsi + rax*4], r8d
movsx rax, byte [r14 + rdx + 3]
cmp al, 0xff
je 0x1402e9992
mov dword [rsi + rax*4], r9d
movsx rax, byte [r14 + rdx + 4]
cmp al, 0xff
je 0x1402e99a0
mov dword [rsi + rax*4], r10d
movsx rax, byte [r14 + rdx + 5]
cmp al, 0xff
je 0x1402e99ae
mov dword [rsi + rax*4], r11d
movsx rax, byte [r14 + rdx + 6]
cmp al, 0xff
je 0x1402e99bb
mov dword [rsi + rax*4], ebx
movsx rax, byte [r14 + rdx + 7]
cmp al, 0xff
je 0x1402e99c9
mov dword [rsi + rax*4], r12d
movsx rax, byte [r14 + rdx + 8]
cmp al, 0xff
je 0x1402e99d6
mov dword [rsi + rax*4], edi
movsx rax, byte [r14 + rdx + 9]
cmp al, 0xff
je 0x1402e99e4
mov dword [rsi + rax*4], r15d
movsx rax, byte [r14 + rdx + 0xa]
cmp al, 0xff
je 0x1402e99f5
mov ecx, dword [rsp + 0x34]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0xb]
cmp al, 0xff
je 0x1402e9a06
mov ecx, dword [rsp + 0x50]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0xc]
cmp al, 0xff
je 0x1402e9a14
mov dword [rsi + rax*4], r13d
movsx rax, byte [r14 + rdx + 0xd]
cmp al, 0xff
je 0x1402e9a25
mov ecx, dword [rsp + 0x24]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0xe]
cmp al, 0xff
je 0x1402e9a36
mov ecx, dword [rsp + 0x28]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0xf]
cmp al, 0xff
je 0x1402e9a47
mov ecx, dword [rsp + 0x2c]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x10]
cmp al, 0xff
je 0x1402e9a58
mov ecx, dword [rsp + 0x30]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x11]
cmp al, 0xff
je 0x1402e9a69
mov ecx, dword [rsp + 0x20]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x12]
cmp al, 0xff
je 0x1402e9a7a
mov ecx, dword [rsp + 0x40]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x13]
cmp al, 0xff
je 0x1402e9a8b
mov ecx, dword [rsp + 0x48]
mov dword [rsi + rax*4], ecx
cmp dword [rsp + 0x58], 0x80
jbe 0x1402e9d3f
mov rax, qword [rsp + 0x60]
movups xmm0, xmmword [rbp + 0x160]
movups xmmword [rbp + 0x100], xmm0
mov r9d, dword [rbp + 0x10c]
cmp byte [rax], 0
mov r8d, dword [rbp + 0x108]
mov edx, dword [rbp + 0x104]
mov ecx, dword [rbp + 0x100]
je 0x1402e9b06
mov r10d, ecx
mov eax, edx
shr eax, 0x11
mov r11d, r8d
shl r10d, 0xf
mov ebx, r9d
xor r10d, eax
shr r11d, 0x11
shr ebx, 0x11
mov eax, edx
shl eax, 0xf
mov r12d, r9d
xor r11d, eax
shl r12d, 0xf
mov eax, r8d
shl eax, 0xf
xor ebx, eax
mov eax, ecx
shr eax, 0x11
xor r12d, eax
mov rax, qword [rsp + 0x68]
cmp byte [rax], 0
je 0x1402e9b52
mov edi, ecx
mov eax, edx
shr eax, 2
mov r15d, r8d
shl edi, 0x1e
xor edi, eax
shr r15d, 2
mov eax, edx
shl eax, 0x1e
xor r15d, eax
mov eax, r9d
shr eax, 2
mov dword [rsp + 0x34], eax
mov eax, r8d
shl eax, 0x1e
xor dword [rsp + 0x34], eax
mov eax, r9d
shl eax, 0x1e
mov dword [rsp + 0x50], eax
mov eax, ecx
shr eax, 2
xor dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x70]
cmp byte [rax], 0
je 0x1402e9ba5
mov r13d, ecx
mov eax, edx
shr eax, 0x13
shl r13d, 0xd
xor r13d, eax
mov eax, r8d
shr eax, 0x13
mov dword [rsp + 0x24], eax
mov eax, edx
shl eax, 0xd
xor dword [rsp + 0x24], eax
mov eax, r9d
shr eax, 0x13
mov dword [rsp + 0x28], eax
mov eax, r8d
shl eax, 0xd
xor dword [rsp + 0x28], eax
mov eax, r9d
shl eax, 0xd
mov dword [rsp + 0x2c], eax
mov eax, ecx
shr eax, 0x13
xor dword [rsp + 0x2c], eax
mov rax, qword [rsp + 0x78]
cmp byte [rax], 0
je 0x1402e9bfb
mov eax, ecx
shl eax, 0x1c
mov dword [rsp + 0x30], eax
mov eax, edx
shr eax, 4
xor dword [rsp + 0x30], eax
mov eax, r8d
shr eax, 4
mov dword [rsp + 0x20], eax
mov eax, edx
shl eax, 0x1c
xor dword [rsp + 0x20], eax
mov eax, r9d
shr eax, 4
mov dword [rsp + 0x40], eax
mov eax, r8d
shl eax, 0x1c
xor dword [rsp + 0x40], eax
mov eax, r9d
shl eax, 0x1c
mov dword [rsp + 0x48], eax
mov eax, ecx
shr eax, 4
xor dword [rsp + 0x48], eax
lea rax, [0x140375510]
movsx rax, byte [r14 + rax + 0x14]
cmp al, 0xff
je 0x1402e9c0f
mov dword [rsi + rax*4], ecx
lea rax, [0x140375510]
movsx rax, byte [r14 + rax + 0x15]
cmp al, 0xff
je 0x1402e9c23
mov dword [rsi + rax*4], edx
lea rdx, [0x140375510]
movsx rax, byte [r14 + rdx + 0x16]
cmp al, 0xff
je 0x1402e9c38
mov dword [rsi + rax*4], r8d
movsx rax, byte [r14 + rdx + 0x17]
cmp al, 0xff
je 0x1402e9c46
mov dword [rsi + rax*4], r9d
movsx rax, byte [r14 + rdx + 0x18]
cmp al, 0xff
je 0x1402e9c54
mov dword [rsi + rax*4], r10d
movsx rax, byte [r14 + rdx + 0x19]
cmp al, 0xff
je 0x1402e9c62
mov dword [rsi + rax*4], r11d
movsx rax, byte [r14 + rdx + 0x1a]
cmp al, 0xff
je 0x1402e9c6f
mov dword [rsi + rax*4], ebx
movsx rax, byte [r14 + rdx + 0x1b]
cmp al, 0xff
je 0x1402e9c7d
mov dword [rsi + rax*4], r12d
movsx rax, byte [r14 + rdx + 0x1c]
cmp al, 0xff
je 0x1402e9c8a
mov dword [rsi + rax*4], edi
movsx rax, byte [r14 + rdx + 0x1d]
cmp al, 0xff
je 0x1402e9c98
mov dword [rsi + rax*4], r15d
movsx rax, byte [r14 + rdx + 0x1e]
cmp al, 0xff
je 0x1402e9ca9
mov ecx, dword [rsp + 0x34]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x1f]
cmp al, 0xff
je 0x1402e9cba
mov ecx, dword [rsp + 0x50]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x20]
cmp al, 0xff
je 0x1402e9cc8
mov dword [rsi + rax*4], r13d
movsx rax, byte [r14 + rdx + 0x21]
cmp al, 0xff
je 0x1402e9cd9
mov ecx, dword [rsp + 0x24]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x22]
cmp al, 0xff
je 0x1402e9cea
mov ecx, dword [rsp + 0x28]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x23]
cmp al, 0xff
je 0x1402e9cfb
mov ecx, dword [rsp + 0x2c]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x24]
cmp al, 0xff
je 0x1402e9d0c
mov ecx, dword [rsp + 0x30]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x25]
cmp al, 0xff
je 0x1402e9d1d
mov ecx, dword [rsp + 0x20]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x26]
cmp al, 0xff
je 0x1402e9d2e
mov ecx, dword [rsp + 0x40]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x27]
cmp al, 0xff
je 0x1402e9d3f
mov ecx, dword [rsp + 0x48]
mov dword [rsi + rax*4], ecx
mov rax, qword [rbp - 0x80]
movups xmm0, xmmword [rbp + 0x170]
movups xmmword [rbp + 0x100], xmm0
mov r9d, dword [rbp + 0x10c]
cmp byte [rax], 0
mov r8d, dword [rbp + 0x108]
mov edx, dword [rbp + 0x104]
mov ecx, dword [rbp + 0x100]
je 0x1402e9dab
mov r10d, ecx
mov eax, edx
shr eax, 0x11
mov r11d, r8d
shl r10d, 0xf
mov ebx, r9d
xor r10d, eax
shr r11d, 0x11
shr ebx, 0x11
mov eax, edx
shl eax, 0xf
mov r12d, r9d
xor r11d, eax
shl r12d, 0xf
mov eax, r8d
shl eax, 0xf
xor ebx, eax
mov eax, ecx
shr eax, 0x11
xor r12d, eax
mov rax, qword [rbp - 0x78]
cmp byte [rax], 0
je 0x1402e9df6
mov edi, ecx
mov eax, edx
shr eax, 2
mov r15d, r8d
shl edi, 0x1e
xor edi, eax
shr r15d, 2
mov eax, edx
shl eax, 0x1e
xor r15d, eax
mov eax, r9d
shr eax, 2
mov dword [rsp + 0x34], eax
mov eax, r8d
shl eax, 0x1e
xor dword [rsp + 0x34], eax
mov eax, r9d
shl eax, 0x1e
mov dword [rsp + 0x50], eax
mov eax, ecx
shr eax, 2
xor dword [rsp + 0x50], eax
mov rax, qword [rbp - 0x70]
cmp byte [rax], 0
je 0x1402e9e48
mov r13d, ecx
mov eax, edx
shr eax, 0x13
shl r13d, 0xd
xor r13d, eax
mov eax, r8d
shr eax, 0x13
mov dword [rsp + 0x24], eax
mov eax, edx
shl eax, 0xd
xor dword [rsp + 0x24], eax
mov eax, r9d
shr eax, 0x13
mov dword [rsp + 0x28], eax
mov eax, r8d
shl eax, 0xd
xor dword [rsp + 0x28], eax
mov eax, r9d
shl eax, 0xd
mov dword [rsp + 0x2c], eax
mov eax, ecx
shr eax, 0x13
xor dword [rsp + 0x2c], eax
mov rax, qword [rbp - 0x68]
cmp byte [rax], 0
je 0x1402e9e9d
mov eax, ecx
shl eax, 0x1c
mov dword [rsp + 0x30], eax
mov eax, edx
shr eax, 4
xor dword [rsp + 0x30], eax
mov eax, r8d
shr eax, 4
mov dword [rsp + 0x20], eax
mov eax, edx
shl eax, 0x1c
xor dword [rsp + 0x20], eax
mov eax, r9d
shr eax, 4
mov dword [rsp + 0x40], eax
mov eax, r8d
shl eax, 0x1c
xor dword [rsp + 0x40], eax
mov eax, r9d
shl eax, 0x1c
mov dword [rsp + 0x48], eax
mov eax, ecx
shr eax, 4
xor dword [rsp + 0x48], eax
lea rax, [0x140375510]
movsx rax, byte [r14 + rax + 0x28]
cmp al, 0xff
je 0x1402e9eb1
mov dword [rsi + rax*4], ecx
lea rax, [0x140375510]
movsx rax, byte [r14 + rax + 0x29]
cmp al, 0xff
je 0x1402e9ec5
mov dword [rsi + rax*4], edx
lea rdx, [0x140375510]
movsx rax, byte [r14 + rdx + 0x2a]
cmp al, 0xff
je 0x1402e9eda
mov dword [rsi + rax*4], r8d
movsx rax, byte [r14 + rdx + 0x2b]
cmp al, 0xff
je 0x1402e9ee8
mov dword [rsi + rax*4], r9d
movsx rax, byte [r14 + rdx + 0x2c]
cmp al, 0xff
je 0x1402e9ef6
mov dword [rsi + rax*4], r10d
movsx rax, byte [r14 + rdx + 0x2d]
cmp al, 0xff
je 0x1402e9f04
mov dword [rsi + rax*4], r11d
movsx rax, byte [r14 + rdx + 0x2e]
cmp al, 0xff
je 0x1402e9f11
mov dword [rsi + rax*4], ebx
movsx rax, byte [r14 + rdx + 0x2f]
cmp al, 0xff
je 0x1402e9f1f
mov dword [rsi + rax*4], r12d
movsx rax, byte [r14 + rdx + 0x30]
cmp al, 0xff
je 0x1402e9f2c
mov dword [rsi + rax*4], edi
movsx rax, byte [r14 + rdx + 0x31]
cmp al, 0xff
je 0x1402e9f3a
mov dword [rsi + rax*4], r15d
movsx rax, byte [r14 + rdx + 0x32]
cmp al, 0xff
je 0x1402e9f4b
mov ecx, dword [rsp + 0x34]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x33]
cmp al, 0xff
je 0x1402e9f5c
mov ecx, dword [rsp + 0x50]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x34]
cmp al, 0xff
je 0x1402e9f6a
mov dword [rsi + rax*4], r13d
movsx rax, byte [r14 + rdx + 0x35]
cmp al, 0xff
je 0x1402e9f7b
mov ecx, dword [rsp + 0x24]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x36]
cmp al, 0xff
je 0x1402e9f8c
mov ecx, dword [rsp + 0x28]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x37]
cmp al, 0xff
je 0x1402e9f9d
mov ecx, dword [rsp + 0x2c]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x38]
cmp al, 0xff
je 0x1402e9fae
mov ecx, dword [rsp + 0x30]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x39]
cmp al, 0xff
je 0x1402e9fbf
mov ecx, dword [rsp + 0x20]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x3a]
cmp al, 0xff
je 0x1402e9fd0
mov ecx, dword [rsp + 0x40]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x3b]
cmp al, 0xff
je 0x1402e9fe1
mov ecx, dword [rsp + 0x48]
mov dword [rsi + rax*4], ecx
cmp dword [rsp + 0x58], 0x80
jbe 0x1402ea291
mov rax, qword [rbp - 0x60]
movups xmm0, xmmword [rbp + 0x180]
movups xmmword [rbp + 0x100], xmm0
mov r9d, dword [rbp + 0x10c]
cmp byte [rax], 0
mov r8d, dword [rbp + 0x108]
mov edx, dword [rbp + 0x104]
mov ecx, dword [rbp + 0x100]
je 0x1402ea05b
mov r10d, ecx
mov eax, edx
shr eax, 0x11
mov r11d, r8d
shl r10d, 0xf
mov ebx, r9d
xor r10d, eax
shr r11d, 0x11
shr ebx, 0x11
mov eax, edx
shl eax, 0xf
mov r12d, r9d
xor r11d, eax
shl r12d, 0xf
mov eax, r8d
shl eax, 0xf
xor ebx, eax
mov eax, ecx
shr eax, 0x11
xor r12d, eax
mov rax, qword [rbp - 0x58]
cmp byte [rax], 0
je 0x1402ea0a6
mov edi, ecx
mov eax, edx
shr eax, 2
mov r15d, r8d
shl edi, 0x1e
xor edi, eax
shr r15d, 2
mov eax, edx
shl eax, 0x1e
xor r15d, eax
mov eax, r9d
shr eax, 2
mov dword [rsp + 0x34], eax
mov eax, r8d
shl eax, 0x1e
xor dword [rsp + 0x34], eax
mov eax, r9d
shl eax, 0x1e
mov dword [rsp + 0x50], eax
mov eax, ecx
shr eax, 2
xor dword [rsp + 0x50], eax
mov rax, qword [rbp - 0x50]
cmp byte [rax], 0
je 0x1402ea0f8
mov r13d, ecx
mov eax, edx
shr eax, 0x13
shl r13d, 0xd
xor r13d, eax
mov eax, r8d
shr eax, 0x13
mov dword [rsp + 0x24], eax
mov eax, edx
shl eax, 0xd
xor dword [rsp + 0x24], eax
mov eax, r9d
shr eax, 0x13
mov dword [rsp + 0x28], eax
mov eax, r8d
shl eax, 0xd
xor dword [rsp + 0x28], eax
mov eax, r9d
shl eax, 0xd
mov dword [rsp + 0x2c], eax
mov eax, ecx
shr eax, 0x13
xor dword [rsp + 0x2c], eax
mov rax, qword [rbp - 0x48]
cmp byte [rax], 0
je 0x1402ea14d
mov eax, ecx
shl eax, 0x1c
mov dword [rsp + 0x30], eax
mov eax, edx
shr eax, 4
xor dword [rsp + 0x30], eax
mov eax, r8d
shr eax, 4
mov dword [rsp + 0x20], eax
mov eax, edx
shl eax, 0x1c
xor dword [rsp + 0x20], eax
mov eax, r9d
shr eax, 4
mov dword [rsp + 0x40], eax
mov eax, r8d
shl eax, 0x1c
xor dword [rsp + 0x40], eax
mov eax, r9d
shl eax, 0x1c
mov dword [rsp + 0x48], eax
mov eax, ecx
shr eax, 4
xor dword [rsp + 0x48], eax
lea rax, [0x140375510]
movsx rax, byte [r14 + rax + 0x3c]
cmp al, 0xff
je 0x1402ea161
mov dword [rsi + rax*4], ecx
lea rax, [0x140375510]
movsx rax, byte [r14 + rax + 0x3d]
cmp al, 0xff
je 0x1402ea175
mov dword [rsi + rax*4], edx
lea rdx, [0x140375510]
movsx rax, byte [r14 + rdx + 0x3e]
cmp al, 0xff
je 0x1402ea18a
mov dword [rsi + rax*4], r8d
movsx rax, byte [r14 + rdx + 0x3f]
cmp al, 0xff
je 0x1402ea198
mov dword [rsi + rax*4], r9d
movsx rax, byte [r14 + rdx + 0x40]
cmp al, 0xff
je 0x1402ea1a6
mov dword [rsi + rax*4], r10d
movsx rax, byte [r14 + rdx + 0x41]
cmp al, 0xff
je 0x1402ea1b4
mov dword [rsi + rax*4], r11d
movsx rax, byte [r14 + rdx + 0x42]
cmp al, 0xff
je 0x1402ea1c1
mov dword [rsi + rax*4], ebx
movsx rax, byte [r14 + rdx + 0x43]
cmp al, 0xff
je 0x1402ea1cf
mov dword [rsi + rax*4], r12d
movsx rax, byte [r14 + rdx + 0x44]
cmp al, 0xff
je 0x1402ea1dc
mov dword [rsi + rax*4], edi
movsx rax, byte [r14 + rdx + 0x45]
cmp al, 0xff
je 0x1402ea1ea
mov dword [rsi + rax*4], r15d
movsx rax, byte [r14 + rdx + 0x46]
cmp al, 0xff
je 0x1402ea1fb
mov ecx, dword [rsp + 0x34]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x47]
cmp al, 0xff
je 0x1402ea20c
mov ecx, dword [rsp + 0x50]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x48]
cmp al, 0xff
je 0x1402ea21a
mov dword [rsi + rax*4], r13d
movsx rax, byte [r14 + rdx + 0x49]
cmp al, 0xff
je 0x1402ea22b
mov ecx, dword [rsp + 0x24]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x4a]
cmp al, 0xff
je 0x1402ea23c
mov ecx, dword [rsp + 0x28]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x4b]
cmp al, 0xff
je 0x1402ea24d
mov ecx, dword [rsp + 0x2c]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x4c]
cmp al, 0xff
je 0x1402ea25e
mov ecx, dword [rsp + 0x30]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x4d]
cmp al, 0xff
je 0x1402ea26f
mov ecx, dword [rsp + 0x20]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x4e]
cmp al, 0xff
je 0x1402ea280
mov ecx, dword [rsp + 0x40]
mov dword [rsi + rax*4], ecx
movsx rax, byte [r14 + rdx + 0x4f]
cmp al, 0xff
je 0x1402ea291
mov ecx, dword [rsp + 0x48]
mov dword [rsi + rax*4], ecx
mov rax, qword [rbp - 0x40]
mov r13, qword [rsp + 0x310]
mov r12, qword [rsp + 0x308]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea2b7
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp - 0x38]
mov dword [rax + rsi], ecx
mov rax, qword [rbp - 0x30]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea2cd
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp - 0x28]
mov dword [rax + rsi], ecx
mov rax, qword [rbp - 0x20]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea2e3
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp - 0x18]
mov dword [rax + rsi], ecx
mov rax, qword [rbp - 0x10]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea2f9
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp - 8]
mov dword [rax + rsi], ecx
mov rax, qword [rbp]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea30f
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 8]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0x10]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea325
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0x18]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0x20]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea33b
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0x28]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0x30]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea351
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0x38]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0x40]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea367
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0x48]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0x50]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea37d
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0x58]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0x60]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea393
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0x68]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0x70]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea3a9
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0x78]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0x80]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea3c5
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0x88]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0x90]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea3e1
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0x98]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0xa0]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea3fd
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0xa8]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0xb0]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea419
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0xb8]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0xc0]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea435
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0xc8]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0xd0]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea451
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0xd8]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0xe0]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea46d
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0xe8]
mov dword [rax + rsi], ecx
mov rax, qword [rbp + 0xf0]
movsx rax, byte [rax]
cmp al, 0xff
je 0x1402ea489
mov ecx, dword [rsi + rax*4]
mov rax, qword [rbp + 0xf8]
mov dword [rax + rsi], ecx
xor eax, eax
mov rcx, qword [rbp + 0x1c0]
xor rcx, rsp
call fcn.14025e930
mov rbx, qword [rsp + 0x318]
add rsp, 0x2d0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret