Function at 0x180037420
Capabilities:
Encode data using base64
Parse credit card information

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb08]
sub rsp, 0xc08
mov eax, dword [rbp + 0xb60]
mov r13, r9
mov esi, dword [rbp + 0x690]
mov r9d, r8d
mov r10, rdx
mov r8, rcx
mov edi, r9d
lea r14d, [r9 + 0x69c]
cmp r9d, r14d
jae 0x180037ad1
mov r15d, dword [rbp + 0xb60]
mov edx, 0xfffd
mov r12, qword [rbp + 0xb70]
mov dword [rsp + 0x34], r15d
mov dword [rsp + 0x30], eax
nop word [rax + rax]
cmp edi, 0x182
ja 0x180037753
je 0x18003771b
cmp edi, 0xc7
ja 0x18003768a
je 0x180037683
mov eax, edi
sub eax, 0xb
je 0x18003767c
sub eax, 0x5e
je 0x180037650
cmp eax, 0x1f
jne 0x180037625
cmp dword [r8 + 0x220], 0
jne 0x18003750b
mov ecx, 0x2d
mov eax, ecx
sub eax, 0x2c
je case.0x180037b45.28
cmp eax, 1
jne 0x180037504
mov dword [rsp + 0x38], eax
dec ecx
cmp ecx, 0x2b
ja 0x1800374f0
mov r12, qword [rbp + 0xb70]
mov ecx, 0x9a
mov rdx, r12
call fcn.1800053f0
cmp eax, 0xffffffff
jne 0x180037647
mov ebx, 0xaf
nop dword [rax]
cmp ebx, 0xaf
je 0x18003755e
cmp ebx, 0x3296
je 0x180037551
cmp ebx, 0x647d
je case.0x180037b45.28
jmp 0x180037605
mov dword [rsp + 0x38], 0
jmp 0x180037605
test r13, r13
je 0x1800375e9
cmp r12, r13
je 0x1800375e9
mov rcx, r13
mov rax, r12
mov edx, 4
nop dword [rax + rax]
lea rcx, [rcx + 0x80]
movups xmm0, xmmword [rax]
lea rax, [rax + 0x80]
movups xmmword [rcx - 0x80], xmm0
movups xmm1, xmmword [rax - 0x70]
movups xmmword [rcx - 0x70], xmm1
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rcx - 0x60], xmm0
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rcx - 0x50], xmm1
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rcx - 0x40], xmm0
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rcx - 0x30], xmm1
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rcx - 0x20], xmm0
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rcx - 0x10], xmm1
sub rdx, 1
jne 0x180037580
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
mov rax, qword [rax + 0x20]
mov qword [rcx + 0x20], rax
mov r10, qword [rbp + 0xb58]
test r10, r10
je 0x18003760c
xor edx, edx
mov r8d, 0x228
mov rcx, r10
call fcn.180063be0
mov r10, qword [rbp + 0xb58]
add ebx, 0x31e7
cmp ebx, 0x95b5
jbe 0x180037530
mov r8, qword [rbp + 0xb50]
mov r11d, dword [rsp + 0x30]
add edi, 0x5e
mov edx, 0xfffd
cmp edi, r14d
jb 0x1800374a0
mov r9d, dword [rbp + 0xb60]
jmp 0x180037ae1
mov r10, qword [rbp + 0xb58]
jmp 0x18003761e
mov r8d, 4
lea rdx, [0x180083a09]
lea rcx, [rsp + 0x60]
call fcn.180067120
mov r10, qword [rbp + 0xb58]
mov r8, qword [rbp + 0xb50]
mov byte [rsp + 0x64], 0x79
jmp 0x180037625
mov byte [rsp + 0x60], 0
jmp 0x180037625
mov byte [rsp + 0x65], 0
jmp 0x180037625
mov eax, edi
sub eax, 0xe6
je 0x1800376e3
sub eax, 0x3f
je 0x1800376c4
cmp eax, 0x1f
jne 0x180037625
xor edx, edx
lea rcx, [rbp + 0x240]
mov r8d, 0x228
call fcn.180063be0
mov r10, qword [rbp + 0xb58]
mov r8, qword [rbp + 0xb50]
jmp 0x180037625
mov eax, dword [0x1800839e3]
mov dword [rsp + 0x65], eax
movzx eax, byte [0x1800839e7]
mov byte [rsp + 0x69], al
mov byte [rsp + 0x6a], 0
jmp 0x180037625
xor edx, edx
lea rcx, [rbp + 0x470]
mov r8d, 0x228
call fcn.180063be0
mov esi, dword [r12 + 0x220]
mov r10, qword [rbp + 0xb58]
add esi, 2
mov r8, qword [rbp + 0xb50]
mov dword [rbp + 0x690], esi
jmp 0x180037625
cmp dword [r8], 0
mov rcx, qword [rbp + 0xb70]
mov r11d, dword [rsp + 0x30]
mov r12, rcx
movzx eax, word [rcx + 0xc]
mov esi, dword [rbp + 0x690]
je 0x180037747
or ax, 2
mov word [rcx + 0xc], ax
jmp 0x18003762a
and ax, dx
mov word [rcx + 0xc], ax
jmp 0x18003762a
cmp edi, 0x25e
ja 0x1800379d3
je 0x1800379b3
mov eax, edi
sub eax, 0x19d
je 0x1800378c5
sub eax, 5
je 0x18003789e
cmp eax, 0x5e
jne 0x180037625
mov r12, qword [rbp + 0xb70]
lea rax, [rbp + 0x10]
cmp r12, rax
je 0x180037809
mov rax, r12
lea rcx, [rbp + 0x10]
mov edx, 4
lea rcx, [rcx + 0x80]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rax + 0x80]
movups xmmword [rcx - 0x80], xmm0
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rcx - 0x70], xmm1
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rcx - 0x60], xmm0
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rcx - 0x50], xmm1
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rcx - 0x40], xmm0
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rcx - 0x30], xmm1
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rcx - 0x20], xmm0
movups xmmword [rcx - 0x10], xmm1
sub rdx, 1
jne 0x1800377a0
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov rax, qword [rax + 0x20]
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm1
mov qword [rcx + 0x20], rax
lea rax, [rbp + 0x6a0]
cmp r8, rax
je 0x180037625
mov rax, r8
lea rcx, [rbp + 0x6a0]
mov edx, 4
nop dword [rax + rax]
lea rcx, [rcx + 0x80]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rax + 0x80]
movups xmmword [rcx - 0x80], xmm0
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rcx - 0x70], xmm1
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rcx - 0x60], xmm0
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rcx - 0x50], xmm1
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rcx - 0x40], xmm0
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rcx - 0x30], xmm1
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rcx - 0x20], xmm0
movups xmmword [rcx - 0x10], xmm1
sub rdx, 1
jne 0x180037830
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov rax, qword [rax + 0x20]
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm1
mov qword [rcx + 0x20], rax
jmp 0x180037625
xor edx, edx
lea rcx, [rbp + 0x8d0]
mov r8d, 0x228
call fcn.180063be0
mov r10, qword [rbp + 0xb58]
mov r8, qword [rbp + 0xb50]
jmp 0x180037625
cmp dword [r10], 0
mov eax, dword [r12]
je 0x180037940
cmp eax, 0x10
jne 0x1800378f4
movabs eax, dword [0xa0000064]
or eax, dword [r8]
mov esi, dword [rbp + 0x690]
movabs dword [0xa0000064], eax
jmp 0x180037625
mov r11d, dword [rsp + 0x30]
cmp eax, 0x100
jne 0x180037920
movabs eax, dword [0xa0000084]
or eax, dword [r8]
mov esi, dword [rbp + 0x690]
movabs dword [0xa0000084], eax
jmp 0x18003762a
movabs eax, dword [0xa00000a4]
or eax, dword [r8]
mov esi, dword [rbp + 0x690]
movabs dword [0xa00000a4], eax
jmp 0x18003762a
mov ecx, dword [r8]
not ecx
cmp eax, 0x10
jne 0x180037969
movabs eax, dword [0xa0000064]
mov esi, dword [rbp + 0x690]
and eax, ecx
movabs dword [0xa0000064], eax
jmp 0x180037625
mov r11d, dword [rsp + 0x30]
cmp eax, 0x100
jne 0x180037994
movabs eax, dword [0xa0000084]
mov esi, dword [rbp + 0x690]
and eax, ecx
movabs dword [0xa0000084], eax
jmp 0x18003762a
movabs eax, dword [0xa00000a4]
mov esi, dword [rbp + 0x690]
and eax, ecx
movabs dword [0xa00000a4], eax
jmp 0x18003762a
mov eax, dword [r8 + 0x224]
xor r11d, r11d
cmp dword [r12 + 0x224], eax
setne r11b
mov dword [rsp + 0x30], r11d
jmp 0x18003762a
mov eax, edi
sub eax, 0x2bc
je 0x180037a78
cmp eax, 0x5e
jne 0x180037625
cmp r15d, 0x1f
jge 0x180037a6b
mov ebx, 0xe1
mov eax, r15d
cmp ebx, 0xe1
je 0x180037a21
cmp ebx, 0x17f
jne 0x180037a45
mov dword [rsp + 0x78], r15d
lea r9, [rbp + 0x6a0]
lea rdx, [rbp + 0x6a0]
lea rcx, [rsp + 0x78]
jmp 0x180037a3a
mov r15d, 0x1f
lea r9, [rbp + 0x10]
sub r15d, eax
lea rdx, [rbp + 0x10]
mov dword [rbp - 0x80], r15d
lea rcx, [rbp - 0x80]
mov r8d, 0x3b
call fcn.18004c140
add ebx, 0x9e
cmp ebx, 0x21d
jb 0x1800379f4
mov r10, qword [rbp + 0xb58]
mov r8, qword [rbp + 0xb50]
mov dword [rsp + 0x34], r15d
jmp 0x180037625
xor r15d, r15d
mov dword [rsp + 0x34], r15d
jmp 0x180037625
xor edx, edx
mov dword [rbp + 0x8c4], 0
lea rcx, [rbp + 0x6a0]
mov dword [rbp + 0x234], 0
lea r8d, [rdx + 0x18]
call fcn.180027b70
mov r15d, eax
and r15d, 0x8000001f
mov dword [rsp + 0x34], r15d
jge 0x180037abe
dec r15d
or r15d, 0xffffffe0
inc r15d
mov dword [rsp + 0x34], r15d
mov r10, qword [rbp + 0xb58]
mov r8, qword [rbp + 0xb50]
jmp 0x180037625
mov r11d, dword [rbp + 0xb60]
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x34], eax
lea eax, [r9 + 0x12]
mov dword [rbp - 0x48], eax
cmp r9d, eax
jae case.0x180037b45.28
mov r8d, dword [rbp + 0x230]
mov edi, dword [rbp + 0x694]
mov r14d, dword [rbp + 0xb60]
mov r12d, dword [rbp + 0xb60]
mov r15, qword [rbp - 0x10]
lea eax, [r9 - 0xb]
lea rbx, [0x180000000]
cmp eax, 0x83
ja case.0x180037b45.29
movzx eax, byte [rbx + rax + 0x38724]
movsxd r13, dword [rsp + 0x4c]
mov rdx, r13
mov qword [rsp + 0x40], rdx
mov ecx, dword [rbx + rax*4 + 0x386d8]
add rcx, rbx
jmp rcx
lea eax, [r8 - 1]
mov dword [rsp + 0x3c], eax
jmp case.0x180037b45.29
mov byte [rsp + 0x74], 0
jmp case.0x180037b45.29
mov eax, dword [0x180083a55]
mov dword [rsp + 0x6a], eax
movzx eax, byte [0x180083a59]
mov byte [rsp + 0x6e], al
jmp case.0x180037b45.29
mov r13, qword [rbp + 0xb68]
test r13, r13
je 0x180037d13
mov edi, dword [rsp + 0x34]
mov ebx, 0x8a
cmp ebx, 0x8a
je 0x180037c8d
cmp ebx, 0x2c34
jne 0x180037cf4
mov edx, 0x66
nop
cmp edx, 0x66
je 0x180037bd1
cmp edx, 0xcc0
jne 0x180037bfb
xor eax, eax
test r8d, r8d
cmovne eax, dword [rbp + 0x234]
mov dword [rbp + 0x234], eax
jmp 0x180037bfb
test r8d, r8d
je 0x180037bfb
nop word [rax + rax]
lea ecx, [r8 - 1]
movsxd rax, ecx
cmp dword [rbp + rax*4 + 0x10], 0
jne 0x180037bfb
mov dword [rbp + 0x230], ecx
mov r8d, ecx
test ecx, ecx
jne 0x180037be0
add edx, 0xc5a
cmp edx, 0x18b4
jbe 0x180037bb0
lea rax, [rbp + 0x10]
cmp rax, r13
je 0x180037cf4
mov rcx, r13
lea rax, [rbp + 0x10]
mov edx, 4
lea rcx, [rcx + 0x80]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rax + 0x80]
movups xmmword [rcx - 0x80], xmm0
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rcx - 0x70], xmm1
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rcx - 0x60], xmm0
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rcx - 0x50], xmm1
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rcx - 0x40], xmm0
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rcx - 0x30], xmm1
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rcx - 0x20], xmm0
movups xmmword [rcx - 0x10], xmm1
sub rdx, 1
jne 0x180037c22
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov rax, qword [rax + 0x20]
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm1
mov qword [rcx + 0x20], rax
jmp 0x180037cf4
mov r9d, 0xd9
mov dword [rbp - 0x78], edi
lea r8, [rbp - 0x78]
mov qword [rsp + 0x20], 0
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x10]
call fcn.1800311f0
mov rax, qword [rbp + 0xb50]
mov r8d, dword [rbp + 0x230]
movsxd rcx, dword [rax + 0x220]
cmp ecx, r8d
jge 0x180037cf4
lea rdx, [rbp + 0x10]
xor eax, eax
lea rdx, [rdx + rcx*4]
nop dword [rax]
nop dword [rax + rax]
mov dword [rdx], eax
lea rdx, [rdx + 4]
mov r8d, dword [rbp + 0x230]
inc ecx
cmp ecx, r8d
jl 0x180037ce0
add ebx, 0x2baa
cmp ebx, 0x5754
jbe 0x180037b91
mov edi, dword [rbp + 0x694]
mov r9d, dword [rbp + 0xb60]
mov dword [rsp + 0x38], 0
jmp case.0x180037b45.29
mov r8d, 0x10e
lea rdx, [rbp - 0x30]
lea rcx, [rsp + 0x60]
call fcn.180012b30
lea rcx, [rbp - 8]
call rax
test eax, eax
jne 0x1800386a3
mov byte [rsp + 0x38], al
mov eax, dword [rsp + 0x38]
add rsp, 0xc08
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov eax, dword [0x180083a6f]
mov dword [rsp + 0x6f], eax
movzx eax, byte [0x180083a73]
mov byte [rsp + 0x73], al
jmp case.0x180037b45.29
movzx ecx, byte [rbp - 8]
mov eax, 0x3d
cmp eax, 0x3d
je 0x180037d8d
cmp eax, 0x42
je case.0x180037b45.28
jmp 0x180037d95
cmp cl, 1
sete byte [rsp + 0x38]
add eax, 5
cmp eax, 0x47
jb 0x180037d81
movabs rax, 0x6c0065006e
lea rdx, [rbp - 0x24]
mov qword [rbp - 0x2a], rax
mov ecx, 3
jmp 0x180038698
mov eax, dword [0x180083a88]
mov dword [rbp - 0x20], eax
movzx eax, word [0x180083a8c]
mov word [rbp - 0x1c], ax
jmp case.0x180037b45.29
mov r8d, 0xc0
lea rdx, [rbp + 0x6a0]
lea rcx, [rbp + 0x10]
call fcn.180010c10
cmp eax, 0xffffffff
je 0x180037e6e
movsxd rdi, dword [rsp + 0x3c]
mov rsi, r13
nop dword [rax]
mov ebx, 0xa1
mov eax, ebx
sub eax, 0xa1
je 0x180037e2f
cmp eax, 0x14
jne 0x180037e3c
mov r9d, 0x127
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x6a0]
lea rcx, [rbp + 0x10]
call fcn.18005f6b0
jmp 0x180037e3c
mov rax, rdi
sub rax, rsi
inc dword [rbp + rax*4 + 0x470]
add ebx, 0x14
cmp ebx, 0xc9
jb 0x180037e05
mov r8d, 0xc0
lea rdx, [rbp + 0x6a0]
lea rcx, [rbp + 0x10]
call fcn.180010c10
cmp eax, 0xffffffff
jne 0x180037e00
mov edi, dword [rbp + 0x694]
mov esi, dword [rbp + 0x690]
mov eax, dword [rsp + 0x3c]
lea rdx, [rbp + 0x6a0]
sub eax, r13d
lea rcx, [rbp - 0x70]
mov r8d, 0x5d
mov dword [rbp - 0x70], eax
call fcn.1800526b0
jmp 0x1800386a3
test r10, r10
je case.0x180037b45.29
mov r9d, 0xf4
cmp r9d, 0xf4
je 0x180037f52
cmp r9d, 0x1e8
jne 0x180037faa
lea rax, [rbp + 0x470]
cmp rax, r10
je 0x180037f49
mov rcx, r10
lea rax, [rbp + 0x470]
mov edx, 4
nop dword [rax + rax]
lea rcx, [rcx + 0x80]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rax + 0x80]
movups xmmword [rcx - 0x80], xmm0
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rcx - 0x70], xmm1
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rcx - 0x60], xmm0
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rcx - 0x50], xmm1
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rcx - 0x40], xmm0
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rcx - 0x30], xmm1
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rcx - 0x20], xmm0
movups xmmword [rcx - 0x10], xmm1
sub rdx, 1
jne 0x180037ee0
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov rax, qword [rax + 0x20]
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm1
mov qword [rcx + 0x20], rax
mov dword [r10 + 0x224], r11d
jmp 0x180037faa
mov edx, ILRemoveLastID
cmp edx, 0x10
je 0x180037f75
cmp edx, 0x200
jne 0x180037f9c
xor eax, eax
test esi, esi
cmovne eax, edi
mov edi, eax
mov dword [rbp + 0x694], eax
jmp 0x180037f9c
test esi, esi
je 0x180037f9c
nop dword [rax]
lea ecx, [rsi - 1]
movsxd rax, ecx
cmp dword [rbp + rax*4 + 0x470], 0
jne 0x180037f9c
mov dword [rbp + 0x690], ecx
mov esi, ecx
test ecx, ecx
jne 0x180037f80
add edx, 0x1f0
cmp edx, 0x3e0
jbe 0x180037f57
add r9d, 0xf4
cmp r9d, 0x1e8
jbe 0x180037ea2
jmp 0x1800386aa
movsxd r10, dword [rsp + 0x3c]
lea eax, [r13 + 1]
movsxd r9, eax
mov ebx, r10d
mov dword [rsp + 0x48], ebx
mov rcx, r10
mov qword [rsp + 0x50], rcx
mov qword [rbp - 0x38], r9
cmp r10, r9
jl 0x1800385e7
mov rdi, r9
nop
cmp ebx, r8d
jg 0x1800385c4
mov r9d, dword [rbp + rcx*4 + 0x10]
mov r10d, dword [rbp + rdx*4 + 0x6a0]
cmp r9d, r10d
jne 0x18003801e
mov rax, rcx
sub rax, rdx
mov dword [rbp + rax*4 + 0x46c], 0xffffffff
jmp 0x180038083
mov r8d, 0xe5
mov eax, r8d
sub eax, 0xe3
je 0x180038065
sub eax, 1
je 0x18003804c
cmp eax, 1
jne 0x180038077
mov eax, dword [rbp + rcx*4 + 0xc]
mov r11, r9
shl r11, 0x20
or r11, rax
mov qword [rbp - 0x40], r11
jmp 0x180038077
mov rax, qword [rbp - 0x40]
xor edx, edx
mov rcx, qword [rsp + 0x50]
div r10
mov rdx, qword [rsp + 0x40]
mov qword [rbp - 0x40], rax
jmp 0x180038077
mov r11, qword [rbp - 0x40]
mov rax, rcx
sub rax, rdx
mov dword [rbp + rax*4 + 0x46c], r11d
dec r8d
cmp r8d, 0xe2
ja 0x180038024
mov rax, rcx
sub rax, rdx
mov esi, dword [rbp + rax*4 + 0x46c]
lea r13, [rbp + rax*4 + 0x46c]
inc esi
mov qword [rbp - 0x10], r13
mov dword [r13], esi
nop dword [rax]
nop word [rax + rax]
mov edi, 0x65
mov dword [rsp + 0x58], edi
nop dword [rax]
cmp edi, 0x13d
ja 0x1800383c1
je 0x180038149
mov eax, edi
sub eax, 0x65
je 0x18003813e
sub eax, 0x48
je 0x1800380f5
cmp eax, 0x48
jne 0x18003840f
mov eax, dword [rbp + rdx*4 + 0x6a0]
mov dword [rbp + 0x244], eax
jmp 0x18003840f
xor edx, edx
lea rcx, [rbp + 0x244]
mov r8d, 0x224
call fcn.180063be0
cmp dword [rsp + 0x4c], 1
mov rdx, qword [rsp + 0x40]
jns 0x180038127
mov rcx, qword [rsp + 0x50]
xor eax, eax
mov dword [rbp + 0x240], eax
jmp 0x18003840f
mov eax, dword [rbp + rdx*4 + 0x69c]
mov rcx, qword [rsp + 0x50]
mov dword [rbp + 0x240], eax
jmp 0x18003840f
dec esi
mov dword [r13], esi
jmp 0x18003840f
mov r9d, 2
mov ebx, 0xbd
mov dword [rbp + 0x460], r9d
mov edi, 0xfbff
mov r13d, 0x400
nop word [rax + rax]
cmp ebx, 0x7b6
ja 0x18003822a
je 0x1800381f9
mov eax, ebx
sub eax, 0xbd
je 0x1800381f1
sub eax, 0x1b
je 0x1800381c2
cmp eax, 0x43
jne 0x180038397
mov rax, qword [0x180094fd8]
test rax, rax
je 0x180038397
mov rcx, qword [rbp + 0x240]
xor edx, edx
mov r8d, 0x8000
call rax
mov r9d, dword [rbp + 0x460]
jmp 0x180038397
mov edx, dword [rbp + 0x240]
mov r8d, 1
mov ecx, edx
mov eax, edx
and ecx, 0x1f
shl r8d, cl
mov ecx, 0xe000e280
shr rax, 5
mov dword [rcx + rax*4], r8d
mov r9d, dword [rbp + 0x460]
jmp 0x180038397
mov r12d, r9d
jmp 0x180038397
movzx eax, word [rbp + 0x25c]
mov r9d, dword [rbp + 0x460]
test esi, esi
je 0x18003821b
or ax, r13w
mov word [rbp + 0x25c], ax
jmp 0x180038397
and ax, di
mov word [rbp + 0x25c], ax
jmp 0x180038397
cmp ebx, 0x999
je 0x180038341
cmp ebx, 0xe07
je 0x1800382e2
cmp ebx, 0x1275
jne 0x180038397
cmp r14d, r12d
jge 0x180038282
movsxd rcx, r14d
mov eax, r12d
sub eax, r14d
xor edx, edx
movsxd r8, eax
add r14d, eax
mov rax, rcx
shl r8, 2
lea rcx, [rbp + 0x240]
lea rcx, [rcx + rax*4]
call fcn.180063be0
mov r9d, dword [rbp + 0x460]
mov edx, 0x8d
cmp edx, 0x8d
jne 0x1800382cf
test r9d, r9d
je 0x1800382c5
nop dword [rax]
nop dword [rax + rax]
lea ecx, [r9 - 1]
movsxd rax, ecx
cmp dword [rbp + rax*4 + 0x240], 0
jne 0x1800382c0
mov dword [rbp + 0x460], ecx
mov r9d, ecx
test ecx, ecx
jne 0x1800382a0
jmp 0x1800382c5
test r9d, r9d
jne 0x1800382cf
mov dword [rbp + 0x464], 0
add edx, 0x3714
cmp edx, 0x3714
jbe 0x180038287
jmp 0x180038397
test r15, r15
je 0x180038397
cmp r9d, 0x88
je 0x180038397
mov ecx, 0x129
nop dword [rax]
cmp ecx, 0x129
je 0x180038315
cmp ecx, 0xe808
jne 0x180038331
inc r14d
jmp 0x180038331
movsxd rax, r9d
mov dword [rbp + rax*4 + 0x240], r15d
mov r9d, dword [rbp + 0x460]
inc r9d
mov dword [rbp + 0x460], r9d
add ecx, 0xe6df
cmp ecx, 0x1cdbe
jbe 0x180038300
jmp 0x180038397
xor r15d, r15d
xor r14d, r14d
test r9d, r9d
jle 0x180038397
lea r8, [rbp + 0x240]
mov edx, 0x1c
mov eax, edx
sub eax, 0x1c
je 0x18003836d
cmp eax, 0x65
jne 0x180038379
mov dword [r8], r15d
shr r15, 0x20
jmp 0x180038379
mov eax, dword [r8]
mov ecx, esi
imul rcx, rax
add r15, rcx
add edx, 0x65
cmp edx, 0xe6
jb 0x180038358
mov r9d, dword [rbp + 0x460]
inc r14d
add r8, 4
cmp r14d, r9d
jl 0x180038353
add ebx, 0x46e
cmp ebx, 0x27de
jbe 0x180038170
mov edi, dword [rsp + 0x58]
mov r13, qword [rbp - 0x10]
mov ebx, dword [rsp + 0x48]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x40]
jmp 0x18003840f
mov eax, edi
sub eax, 0x185
je 0x1800383e5
cmp eax, 0x48
jne 0x18003840f
mov eax, dword [rbp + rcx*4 + 0x10]
mov dword [rbp + 0x8d8], eax
mov dword [rbp + 0xaf0], 3
jmp 0x18003840f
lea eax, [rbx - 2]
test eax, eax
jns 0x1800383f0
xor eax, eax
jmp 0x1800383f4
mov eax, dword [rbp + rcx*4 + 8]
mov dword [rbp + 0x8d0], eax
lea eax, [rbx - 1]
test eax, eax
jns 0x180038405
xor eax, eax
jmp 0x180038409
mov eax, dword [rbp + rcx*4 + 0xc]
mov dword [rbp + 0x8d4], eax
add edi, 0x48
mov dword [rsp + 0x58], edi
cmp edi, 0x215
jb 0x1800380c0
lea r8, [rbp + 0x8d0]
mov ecx, 0x9a
lea rdx, [rbp + 0x240]
call fcn.1800053f0
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x40]
cmp eax, 1
je 0x1800380b0
lea r9, [rbp + 0x240]
mov dword [rbp - 0x68], esi
mov r8d, 0xbd
lea rdx, [rbp + 0x6a0]
lea rcx, [rbp - 0x68]
call fcn.180024fe0
mov edi, ebx
lea r8, [rbp + 0x240]
sub edi, dword [rsp + 0x4c]
lea rcx, [rbp - 0x60]
dec edi
mov edx, 0x10f
mov dword [rbp - 0x60], edi
call fcn.1800252a0
mov r9d, 0x127
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x240]
lea rcx, [rbp + 0x10]
call fcn.18005f6b0
cmp dword [rbp + 0x234], 1
jne 0x1800385af
mov ebx, 0xc2
nop dword [rax]
cmp ebx, 0xc2
je 0x18003851a
cmp ebx, 0x48c0
je 0x1800384e7
cmp ebx, 0x90be
jne 0x180038599
dec esi
mov dword [r13], esi
jmp 0x180038599
lea r8, [rbp + 0x240]
mov dword [rbp - 0x58], edi
mov edx, 0x10f
lea rcx, [rbp - 0x58]
call fcn.1800252a0
lea r9, [rbp + 0x240]
mov edx, 0x7e
lea r8, [rbp + 0x10]
lea rcx, [rbp + 0x10]
call fcn.1800117d0
jmp 0x180038599
lea rcx, [rbp + 0x240]
mov edx, 4
lea rax, [rbp + 0x6a0]
nop dword [rax]
lea rcx, [rcx + 0x80]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rax + 0x80]
movups xmmword [rcx - 0x80], xmm0
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rcx - 0x70], xmm1
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rcx - 0x60], xmm0
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rcx - 0x50], xmm1
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rcx - 0x40], xmm0
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rcx - 0x30], xmm1
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rcx - 0x20], xmm0
movups xmmword [rcx - 0x10], xmm1
sub rdx, 1
jne 0x180038530
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov rax, qword [rax + 0x20]
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm1
mov qword [rcx + 0x20], rax
add ebx, 0x47fe
cmp ebx, 0xd7fa
jbe 0x1800384c0
mov ebx, dword [rsp + 0x48]
mov rdi, qword [rbp - 0x38]
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x50]
mov r8d, dword [rbp + 0x230]
dec ebx
dec rcx
mov dword [rsp + 0x48], ebx
mov qword [rsp + 0x50], rcx
cmp rcx, rdi
jge 0x180037ff0
mov edi, dword [rbp + 0x694]
mov esi, dword [rbp + 0x690]
mov r9d, dword [rbp + 0xb60]
test r8d, r8d
jne 0x1800385ff
mov dword [rbp + 0x234], r8d
jmp case.0x180037b45.29
mov rax, qword [rbp + 0xb70]
mov eax, dword [rax + 0x224]
mov dword [rbp + 0x234], eax
jmp case.0x180037b45.29
mov byte [rsp + 0x6f], 0
jmp case.0x180037b45.29
mov ecx, dword [rbp + 0x8c0]
lea r8, [rbp + 0x6a0]
mov eax, dword [rsp + 0x3c]
dec ecx
sub eax, ecx
mov dword [rsp + 0x4c], ecx
lea rcx, [rbp - 0x50]
mov dword [rbp - 0x50], eax
mov edx, 0x10f
call fcn.1800252a0
jmp 0x1800386a3
mov eax, dword [0x180083a90]
mov dword [rbp - 0x1c], eax
movzx eax, word [0x180083a94]
mov word [rbp - 0x18], ax
jmp case.0x180037b45.29
mov eax, dword [0x180083a98]
lea rdx, [0x180083aa0]
mov dword [rbp - 0x30], eax
lea rcx, [rbp - 0x30]
movzx eax, word [0x180083a9c]
mov r8d, 1
mov word [rbp - 0x2c], ax
call fcn.180066ec8
jmp 0x1800386a3
lea rdx, [rbp - 0x22]
mov ecx, 2
mov r8d, 0xa
call fcn.1800679f4
mov r8d, dword [rbp + 0x230]
mov r9d, dword [rbp + 0xb60]
inc r9d
mov dword [rbp + 0xb60], r9d
cmp r9d, dword [rbp - 0x48]
jae case.0x180037b45.28
mov r10, qword [rbp + 0xb58]
mov r11d, dword [rsp + 0x30]
jmp 0x180037b10