Function at 0x4e3b40
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x178
movaps xmmword [rsp + 0x160], xmm6
mov r14, r8
mov r12, rdx
mov rbx, rcx
mov rdx, qword [rcx + 0x10]
mov rbp, qword [rcx]
xorps xmm0, xmm0
movaps xmmword [rsp + 0xc0], xmm0
movaps xmmword [rsp + 0xb0], xmm0
mov qword [rsp + 0xd0], 0
xor ecx, ecx
test r9, r9
je 0x4e3b99
cmp dword [r9], 0x3f
cmovle rcx, r9
mov eax, dword [r12]
cmp eax, 0x41
jl 0x4e3bbc
lea rdx, [0x006043b6]
mov rcx, rbx
mov r8d, 0x40
call fcn.00419aa0
jmp 0x4e63bc
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x58], rcx
movzx ecx, word [rsp + 0x1f0]
movzx r15d, cx
mov ecx, r15d
xor ecx, 0xffdf
test ecx, r15d
mov r13d, 1
cmove r13d, eax
imul eax, r13d, 0x70
add eax, 0x370
movsxd rdi, eax
lea rdx, [rdi + 0x70]
mov rcx, rbp
call fcn.00429840
mov rsi, rax
cmp byte [rbp + 0x67], 0
je 0x4e3c19
mov rcx, rbp
mov rdx, rsi
call fcn.00408130
jmp 0x4e63bc
mov dword [rsp + 0xa8], r15d
mov ecx, dword [rsp + 0x1f8]
mov r8, qword [rsp + 0x1e8]
mov rax, qword [rsp + 0x1e0]
mov qword [rsi], rbx
mov qword [rsi + 8], r12
mov rdx, qword [rsp + 0x58]
mov qword [rsi + 0x10], rdx
mov qword [rsi + 0x20], r14
mov qword [rsi + 0x18], rax
mov qword [rsi + 0x30], 0xffffffffffffffff
mov byte [rsi + 0x48], r13b
mov eax, dword [rbx + 0x44]
add eax, 0xffffffff
mov dword [rbx + 0x44], eax
mov dword [rsi + 0x38], eax
mov dword [rsi + 0x3c], eax
movzx r15d, word [rsp + 0x1f0]
mov word [rsi + 0x44], r15w
mov word [rsi + 0x46], cx
mov eax, dword [rbx + 0xc8]
mov dword [rsi + 0x40], eax
mov qword [rsi + 0x28], r8
xorps xmm6, xmm6
movups xmmword [rsi + 0x49], xmm6
movups xmmword [rsi + 0x59], xmm6
movups xmmword [rsi + 0x69], xmm6
mov qword [rsi + 0x78], 0
lea rcx, [rsi + 0x370]
movsxd rax, r13d
imul r8, rax, 0x70
add r8, 0x70
mov qword [rsp + 0x98], rcx
xor edx, edx
call fcn.005f4c10
movabs rax, 0xffffff9d00000000
mov qword [rsi + 0x26c], rax
mov qword [rsp + 0xb0], rsi
lea rcx, [rsi + 0x80]
mov qword [rsp + 0xb8], rcx
lea rax, [rsi + rdi]
mov qword [rsp + 0xc0], rax
lea rax, [rsi + rdi + 0x58]
mov qword [rsi + rdi + 0x48], rax
mov word [rsi + rdi + 0x3c], 0
mov word [rsi + rdi + 0x40], 3
mov dword [rsi + rdi + 0x38], 0
mov qword [rsi + 0x80], rsi
mov byte [rsi + 0x91], 0
mov qword [rsi + 0x88], 0
movabs rax, 0x800000000
mov qword [rsi + 0x94], rax
mov dword [rsi + 0x9c], 0
lea rax, [rsi + 0xa8]
mov qword [rsi + 0xa0], rax
mov qword [rsp + 0x88], rcx
mov rdx, r14
mov r8b, 0x2c
call fcn.004ee1d0
mov dword [rsp + 0x6c], r13d
test r13d, r13d
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x50], r12
mov edi, r15d
mov qword [rsp + 0x80], rbp
mov dword [rsp + 0x7c], r15d
je 0x4e4131
xor r15d, r15d
movabs r13, 0x1000000000000
jmp 0x4e3ddd
mov r8, qword [r8]
mov rcx, qword [rsp + 0x48]
lea rdx, [0x006043e4]
mov r9d, r14d
call fcn.00419aa0
add r15, 1
mov r12, qword [rsp + 0x50]
movsxd rax, dword [r12]
cmp r15, rax
jge 0x4e4177
imul rax, r15, 0x68
mov ecx, dword [r12 + rax + 0x4c]
mov rbx, qword [rsp + 0x38]
movsxd rdx, dword [rbx + 0x26c]
lea ebp, [rdx + 1]
mov dword [rbx + 0x26c], ebp
mov dword [rbx + rdx*4 + 0x270], ecx
mov ecx, dword [r12 + rax + 0x48]
not ecx
or ecx, 0xfffffffb
cmp ecx, 0xffffffff
je 0x4e3dc7
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rcx + rax + 0x60]
test rdx, rdx
je 0x4e3dc7
cmp dword [rdx], 0
jle 0x4e3dc7
mov rcx, qword [rsp + 0x50]
lea rbp, [rcx + rax]
add rbp, 0x4c
mov qword [rsp + 0x60], rbp
mov r8, qword [rcx + rax + 0x28]
xor r14d, r14d
xor r12d, r12d
mov qword [rsp + 0x70], rdx
movsx eax, word [r8 + 0x36]
cmp r12d, eax
jge 0x4e3db0
movsxd rdx, eax
mov rbx, qword [r8 + 8]
movsxd rax, r12d
mov rcx, rax
sub rcx, rdx
mov rdi, rax
shl rdi, 0x30
lea rdx, [rax + rax*2]
lea rdx, [rbx + rdx*8]
add rdx, 0x12
xor ebx, ebx
nop word [rax + rax]
movzx ebp, word [rdx]
mov esi, ebp
xor esi, 0xfffd
test si, bp
jne 0x4e3eb0
add rax, 1
add rbx, 0xffffffffffffffff
add rdi, r13
add rdx, 0x18
cmp rcx, rbx
jne 0x4e3e80
jmp 0x4e3db0
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax]
mov edx, 0x48
mov qword [rsp + 0x90], r8
call fcn.00429840
mov rdx, qword [rsp + 0x90]
test rax, rax
mov rbp, qword [rsp + 0x70]
je 0x4e3dc7
mov rsi, rax
movups xmmword [rax], xmm6
movups xmmword [rax + 0x30], xmm6
movups xmmword [rax + 0x20], xmm6
movups xmmword [rax + 0x10], xmm6
mov qword [rax + 0x40], 0
mov byte [rax], 0xa7
mov word [rax + 0x32], 0xffff
mov dword [rax + 0x28], 1
mov rax, qword [rsp + 0x60]
mov eax, dword [rax]
mov dword [rsi + 0x2c], eax
mov r12d, r12d
sub r12, rbx
mov word [rsi + 0x30], r12w
mov qword [rsi + 0x40], rdx
mov eax, dword [rdx + 0x30]
not eax
or eax, 0xffffff9f
sar rdi, 0x30
cmp eax, 0xffffffff
je 0x4e3fa0
mov rax, qword [rdx + 8]
lea rcx, [rdi + rdi*2]
movzx eax, word [rax + rcx*8 + 0x12]
mov ecx, eax
xor ecx, 0xff9f
test cx, ax
je 0x4e3fa0
movzx edx, word [rdx + 0x36]
mov eax, edx
not eax
mov ecx, 0xffffffff
not ecx
or ecx, eax
movabs rbp, 0x59a85bdc330c7ba0
mov eax, ebp
not eax
or eax, ebp
mov rbp, qword [rsp + 0x70]
not ecx
and ecx, eax
mov rax, 0xffffffffffffffff
shl rax, cl
cmp dx, 0x3f
not rax
mov rcx, 0xffffffffffffffff
cmovg rax, rcx
jmp 0x4e3fda
not edi
mov ecx, 0xffffffff
not ecx
or ecx, edi
movabs rdx, 0x2ebcb6d6684e1e4c
mov eax, edx
not eax
or eax, edx
not ecx
and ecx, eax
mov eax, 1
shl rax, cl
cmp r12w, 0x3f
movabs rcx, 0x8000000000000000
cmovge rax, rcx
mov rbx, qword [rsp + 0x60]
mov rcx, qword [rbx + 0xc]
mov rdx, rcx
and rdx, rax
xor rcx, rax
or rcx, rdx
mov qword [rbx + 0xc], rcx
mov rax, r14
shl rax, 5
mov rdx, qword [rbp + rax + 8]
test rdx, rdx
je 0x4e401c
mov rdi, qword [rsp + 0x48]
mov rcx, qword [rdi]
xor r8d, r8d
xor r9d, r9d
call fcn.004d3ed0
mov rbx, rax
jmp 0x4e4023
xor ebx, ebx
mov rdi, qword [rsp + 0x48]
add r12, 1
mov rcx, qword [rdi]
mov edx, 0x48
call fcn.00429840
mov rdi, rax
test rax, rax
je 0x4e407a
movups xmmword [rdi], xmm6
movups xmmword [rdi + 0x30], xmm6
movups xmmword [rdi + 0x20], xmm6
movups xmmword [rdi + 0x10], xmm6
mov qword [rdi + 0x40], 0
mov byte [rdi], 0xae
mov word [rdi + 0x32], 0xffff
test rbx, rbx
je 0x4e4092
mov qword [rdi + 0x10], rbx
mov eax, dword [rbx + 4]
mov ecx, eax
xor ecx, 0xffbffdf7
and ecx, eax
mov dword [rdi + 4], ecx
mov eax, dword [rbx + 0x28]
jmp 0x4e4094
test rbx, rbx
mov rbp, qword [rsp + 0x48]
je 0x4e40be
mov rcx, qword [rbp]
mov rdx, rbx
call fcn.00468370
jmp 0x4e40be
xor eax, eax
lea ecx, [rax + 1]
mov dword [rdi + 0x28], ecx
mov rbp, qword [rsp + 0x48]
mov rcx, qword [rbp]
mov r8d, dword [rcx + 0x94]
cmp r8d, eax
jg 0x4e40be
mov rcx, rbp
lea rdx, [0x00603afc]
call fcn.00419aa0
mov rcx, rbp
mov edx, 0x35
mov r8, rsi
mov r9, rdi
call fcn.004997c0
mov rsi, rax
mov rdx, qword [rsp + 0x60]
mov al, byte [rdx - 8]
mov ecx, eax
xor cl, 0xb7
and cl, al
cmp cl, 1
mov r8d, 1
adc r8d, 0
mov edx, dword [rdx]
mov rcx, rsi
call fcn.004df3a0
mov rcx, qword [rsp + 0x88]
mov rdx, rsi
mov r8w, 1
call fcn.004f7a50
add r14, 1
mov rdx, qword [rsp + 0x70]
movsxd rax, dword [rdx]
cmp r14, rax
mov r8, qword [rsp + 0x90]
jl 0x4e3e47
jmp 0x4e3dc7
mov rcx, qword [rsp + 0x58]
test rcx, rcx
mov edx, dword [rsp + 0xa8]
je 0x4e414a
lea rax, [rsi + 0x49]
mov cl, byte [rcx]
mov byte [rax], cl
mov eax, edx
xor eax, 0xfeff
test eax, edx
je 0x4e4166
mov eax, dword [rbp + 0x60]
not eax
or eax, 0xffffffef
cmp eax, 0xffffffff
jne 0x4e4166
mov byte [rsi + 0x4b], 1
lea r8, [0x006043d2]
mov rcx, rbx
xor edx, edx
call fcn.004d0380
mov r15, qword [rsp + 0x38]
mov edi, dword [r15 + 0x94]
test edi, edi
mov rbx, qword [rsp + 0x88]
jle 0x4e41be
lea esi, [rdi - 1]
nop word cs:[rax + rax]
add edi, 0xffffffff
mov rcx, r12
mov rdx, rbx
mov r8d, esi
call fcn.004f7d30
lea eax, [rsi - 1]
add esi, 1
cmp esi, 1
mov esi, eax
jg 0x4e41a0
mov r12, qword [rsp + 0x1e8]
test r12, r12
mov r13, qword [rsp + 0x80]
je 0x4e42ef
mov rax, qword [r12 + 0x60]
test rax, rax
je 0x4e42ef
mov ecx, dword [r12 + 4]
not ecx
or ecx, 0xfffffff6
cmp ecx, 0xffffffff
jne 0x4e42ef
mov rdx, qword [r12 + 0x28]
cmp dword [rdx], 1
jne 0x4e42ef
mov rcx, qword [rdx + 0x28]
cmp byte [rcx + 0x3f], 1
jne 0x4e42ef
mov r8, qword [r12 + 0x48]
mov r14d, dword [rdx + 0x4c]
mov ebp, dword [r15 + 0x94]
test ebp, ebp
jle 0x4e4264
mov rdx, qword [r15 + 0xa0]
imul rbp, rbp, 0x38
xor ebx, ebx
xor edi, edi
jmp 0x4e4246
add rdi, 1
add rbx, 0x38
cmp rbp, rbx
je 0x4e4264
movzx esi, word [rdx + rbx + 0x12]
mov ecx, esi
xor ecx, 0xfffb
test cx, si
jne 0x4e4239
cmp dword [rdx + rbx + 0x1c], r14d
je 0x4e4239
jmp 0x4e42ef
test r8, r8
je 0x4e42a4
mov esi, dword [r8]
test esi, esi
jle 0x4e42a4
shl rsi, 5
xor ebp, ebp
xor ebx, ebx
mov rdi, qword [r8 + rbp + 8]
cmp byte [rdi], 0xa7
jne 0x4e42ef
cmp dword [rdi + 0x2c], r14d
jne 0x4e42ef
movzx edx, byte [r8 + rbp + 0x18]
mov ecx, edx
xor cl, 0xfd
test cl, dl
jne 0x4e42ef
add rbx, 1
add rbp, 0x20
cmp rsi, rbp
jne 0x4e4278
mov edx, dword [r12 + 8]
mov r8, qword [rax + 0x10]
mov dword [rsp + 0x20], 0x49
mov rcx, qword [rsp + 0x88]
mov r9d, r14d
call fcn.004fcb00
mov edx, dword [r12 + 0xc]
test edx, edx
jle 0x4e42ef
mov rax, qword [r12 + 0x60]
mov r8, qword [rax + 0x18]
mov dword [rsp + 0x20], 0x4a
mov rcx, qword [rsp + 0x88]
mov r9d, r14d
call fcn.004fcb00
cmp byte [r13 + 0x67], 0
mov r12, qword [rsp + 0x48]
jne 0x4e53c4
mov rsi, qword [rsp + 0xb8]
cmp dword [rsi + 0x1c], 0
jle 0x4e4481
cmp dword [rsp + 0x6c], 0
je 0x4e4416
xor edi, edi
xorps xmm6, xmm6
lea r15, [0x004fccd0]
lea rbp, [0x004cea20]
lea r14, [rsp + 0xe0]
xor ebx, ebx
jmp 0x4e439d
mov rdx, qword [rsi + rdi]
mov rax, qword [rsp + 0x38]
mov r8d, dword [rax + 0x3c]
mov rcx, r12
mov r9d, 0x10
call fcn.004cdaa0
movzx eax, word [rsi + rdi + 0x12]
mov ecx, eax
not ecx
and ecx, 0x41ee
mov edx, eax
and edx, 0xbe11
or edx, ecx
xor edx, 0x41ea
and eax, 4
or eax, edx
mov word [rsi + rdi + 0x12], ax
nop
add rbx, 1
mov rsi, qword [rsp + 0xb8]
movsxd rax, dword [rsi + 0x1c]
add rdi, 0x38
cmp rbx, rax
jge 0x4e4481
mov rsi, qword [rsi + 0x20]
movzx eax, word [rsi + rdi + 0x12]
mov ecx, eax
xor ecx, 0xfffd
test cx, ax
jne 0x4e4380
cmp qword [rsi + rdi + 0x30], 0
jne 0x4e4380
mov rdx, qword [rsi + rdi]
movaps xmmword [rsp + 0x100], xmm6
movaps xmmword [rsp + 0xe0], xmm6
movaps xmmword [rsp + 0xf0], xmm6
mov word [rsp + 0x104], 1
mov qword [rsp + 0xe8], r15
mov qword [rsp + 0xf0], rbp
test rdx, rdx
je 0x4e433b
mov rcx, r14
call fcn.004cea30
cmp word [rsp + 0x104], 0
jne 0x4e433b
jmp 0x4e4380
xor edi, edi
xor ebx, ebx
jmp 0x4e4431
add rbx, 1
movsxd rax, dword [rsi + 0x1c]
add rdi, 0x38
cmp rbx, rax
jge 0x4e4481
mov rbp, qword [rsi + 0x20]
movzx eax, word [rbp + rdi + 0x12]
mov ecx, eax
xor ecx, 0xfffd
test cx, ax
jne 0x4e4420
cmp qword [rbp + rdi + 0x30], 0
jne 0x4e4420
mov rdx, qword [rbp + rdi]
mov rax, qword [rsp + 0x38]
mov r8d, dword [rax + 0x3c]
mov rcx, r12
mov r9d, 0x10
call fcn.004cdaa0
movzx eax, word [rbp + rdi + 0x12]
mov ecx, eax
and ecx, 4
xor eax, 4
or eax, ecx
mov word [rbp + rdi + 0x12], ax
jmp 0x4e4420
mov eax, dword [rsp + 0xa8]
not eax
or eax, 0xfffffeff
cmp eax, 0xffffffff
je 0x4e44c6
mov eax, dword [r13 + 0x60]
not eax
or eax, 0xffffffef
cmp eax, 0xffffffff
mov r15, qword [rsp + 0x38]
je 0x4e44d0
movzx ecx, word [rsp + 0x1f0]
mov eax, ecx
xor eax, 0x100
and eax, ecx
and byte [r15 + 0x45], 0xfe
mov dword [rsp + 0x7c], eax
jmp 0x4e48f0
mov r15, qword [rsp + 0x38]
jmp 0x4e48f0
mov rax, qword [rsp + 0x50]
cmp dword [rax], 1
jne 0x4e48a7
mov rax, qword [rsp + 0x50]
mov ecx, dword [rax + 0x4c]
mov dword [rsp + 0x60], ecx
mov rax, qword [rax + 0x28]
mov rcx, qword [rsp + 0x1e0]
mov ecx, dword [rcx]
test ecx, ecx
jle 0x4e459b
xor edi, edi
jmp 0x4e4511
add rdi, 1
cmp rdi, rcx
je 0x4e459b
mov rdx, rdi
shl rdx, 5
mov rbp, qword [rsp + 0x1e0]
mov rbp, qword [rbp + rdx + 8]
test rbp, rbp
jne 0x4e453d
jmp 0x4e4504
add rbp, 0x10
mov rbp, qword [rbp]
test rbp, rbp
je 0x4e4504
mov ebx, dword [rbp + 4]
mov edx, ebx
xor edx, 0xfff7dfff
test edx, ebx
je 0x4e456b
mov edx, ebx
xor edx, 0xfff7ffff
test edx, ebx
je 0x4e4530
mov rbp, qword [rbp + 0x20]
add rbp, 8
mov rbp, qword [rbp]
test rbp, rbp
jne 0x4e453d
jmp 0x4e4504
mov bl, byte [rbp]
cmp bl, 0xa9
je 0x4e4578
cmp bl, 0xa7
jne 0x4e4504
mov edx, dword [rsp + 0x60]
cmp dword [rbp + 0x2c], edx
jne 0x4e4504
cmp word [rbp + 0x30], 0
jns 0x4e4504
mov r15, qword [rsp + 0x38]
mov byte [r15 + 0x4b], 1
jmp 0x4e48e8
mov rdi, qword [rax + 0x10]
test rdi, rdi
je 0x4e48a7
lea r14, [rsp + 0xf0]
xorps xmm6, xmm6
movabs r12, 0x200000000
lea r13, [rsp + 0xe0]
lea r15, [0x005fade0]
jmp 0x4e45e5
xor esi, esi
movzx eax, word [rdi + 0x5e]
cmp esi, eax
je 0x4e458c
mov rdi, qword [rdi + 0x28]
test rdi, rdi
je 0x4e48a7
cmp byte [rdi + 0x62], 0
je 0x4e45d8
cmp qword [rdi + 0x48], 0
jne 0x4e45d8
cmp word [rdi + 0x5e], 0
je 0x4e45ce
xor esi, esi
mov rbx, qword [rsp + 0x88]
jmp 0x4e461b
test rbp, rbp
je 0x4e4734
add rsi, 1
movzx eax, word [rdi + 0x5e]
cmp rsi, rax
jae 0x4e45d0
mov qword [rsp + 0xe0], rbx
mov qword [rsp + 0xe8], rbx
mov byte [rsp + 0x108], 0
movups xmmword [r14], xmm6
mov qword [rsp + 0x100], r12
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x10c], eax
mov word [rsp + 0x109], 0x101
mov rax, qword [rdi + 8]
mov rcx, qword [rdi + 0x18]
movzx eax, word [rax + rsi*2]
mov dx, 0xffff
cmp ax, word [rcx + 0x34]
je 0x4e46dd
test ax, ax
js 0x4e4699
movzx edx, ax
mov rcx, qword [rcx + 8]
lea rdx, [rdx + rdx*2]
mov cl, byte [rcx + rdx*8 + 0xc]
mov byte [rsp + 0x108], cl
mov rcx, qword [rdi + 0x40]
mov rcx, qword [rcx + rsi*8]
mov qword [rsp + 0xf0], rcx
mov edx, eax
jmp 0x4e46dd
mov edx, eax
cmp ax, 0xfffe
jne 0x4e46dd
mov rax, qword [rdi + 0x50]
mov rcx, rsi
shl rcx, 5
mov rax, qword [rax + rcx + 8]
mov qword [rsp + 0xf8], rax
mov rax, qword [rdi + 0x40]
mov rax, qword [rax + rsi*8]
mov qword [rsp + 0xf0], rax
mov word [rsp + 0x138], 0xfffe
mov rcx, r13
call fcn.004fd1a0
jmp 0x4e46ed
mov word [rsp + 0x138], dx
mov rcx, r13
call fcn.004fcd00
test rax, rax
je 0x4e4734
xor ebp, ebp
jmp 0x4e4718
test rbp, rbp
cmove rbp, rax
mov rcx, r13
call fcn.004fcd00
test rax, rax
je 0x4e4605
cmp qword [rax + 0x28], 0
jne 0x4e4707
mov ecx, dword [rax + 0x14]
mov edx, ecx
xor edx, 0xfffd
test dx, cx
je 0x4e4700
jmp 0x4e460e
mov rcx, qword [rsp + 0x1e0]
cmp dword [rcx], 0
jle 0x4e45d0
mov r12, r14
mov rax, qword [rdi + 0x40]
mov r14, qword [rax + rsi*8]
xor ebp, ebp
jmp 0x4e4778
add rbp, 1
mov rcx, qword [rsp + 0x1e0]
movsxd rax, dword [rcx]
cmp rbp, rax
jge 0x4e4895
mov rax, rbp
shl rax, 5
mov rdx, qword [rcx + rax + 8]
test rdx, rdx
je 0x4e4760
mov rax, rdx
jmp 0x4e479c
add rax, 0x10
mov rax, qword [rax]
test rax, rax
je 0x4e4760
mov ebx, dword [rax + 4]
not ebx
mov ecx, ebx
or ecx, 0xfff7dfff
cmp ecx, 0xffffffff
je 0x4e47cb
or ebx, 0xfff7ffff
cmp ebx, 0xffffffff
je 0x4e4790
mov rax, qword [rax + 0x20]
add rax, 8
mov rax, qword [rax]
test rax, rax
jne 0x4e479c
jmp 0x4e4760
mov cl, byte [rax]
cmp cl, 0xa9
je 0x4e47d7
cmp cl, 0xa7
jne 0x4e4760
mov rcx, qword [rdi + 8]
movzx ebx, word [rax + 0x30]
cmp bx, word [rcx + rsi*2]
jne 0x4e4760
mov ecx, dword [rsp + 0x60]
cmp dword [rax + 0x2c], ecx
jne 0x4e4760
mov rcx, qword [rsp + 0x48]
call fcn.0047fd40
test rax, rax
jne 0x4e4811
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
xor ecx, ecx
jmp 0x4e4833
movzx edx, byte [rdx + r15]
cmp dl, byte [rbx + r15]
jne 0x4e4760
add rcx, 1
movzx edx, byte [rax + rcx]
movzx ebx, byte [r14 + rcx]
cmp dl, bl
jne 0x4e4820
test dl, dl
jne 0x4e482f
test ebp, ebp
mov r14, r12
js 0x4e4898
mov rax, qword [rdi + 8]
movzx ecx, word [rax + rsi*2]
test cx, cx
js 0x4e486d
mov rax, qword [rdi + 0x18]
mov rax, qword [rax + 8]
lea rcx, [rcx + rcx*2]
mov eax, dword [rax + rcx*8 + 8]
and eax, 0xf
jmp 0x4e4876
xor eax, eax
cmp cx, 0xffff
sete al
mov rbx, qword [rsp + 0x88]
movabs r12, 0x200000000
test eax, eax
jne 0x4e460e
jmp 0x4e45d0
mov r14, r12
movabs r12, 0x200000000
jmp 0x4e45d0
cmp qword [rsp + 0x58], 0
je 0x4e48be
mov r13, qword [rsp + 0x80]
mov r15, qword [rsp + 0x38]
jmp 0x4e48f0
mov r15, qword [rsp + 0x38]
movzx eax, word [r15 + 0x44]
mov ecx, eax
and ecx, 0x80
xor eax, 0x80
or eax, ecx
mov word [r15 + 0x44], ax
mov rax, qword [rsp + 0x1e0]
mov qword [r15 + 0x10], rax
mov r13, qword [rsp + 0x80]
cmp dword [rsp + 0x6c], 1
jne 0x4e492e
mov rdi, qword [rsp + 0xb0]
mov eax, dword [rdi + 0x44]
not eax
or eax, 0xffdf
cmp ax, 0xffff
jne 0x4e492e
mov rbp, qword [rdi + 8]
mov rbx, qword [rbp + 0x28]
cmp byte [rbx + 0x3f], 1
je 0x4e492e
mov eax, dword [rbp + 0x48]
not eax
or eax, 0xfffffffd
cmp eax, 0xffffffff
je 0x4e4f79
mov r14, qword [rsp + 0xb0]
mov r10, qword [rsp + 0xc0]
mov rcx, qword [r14]
mov r12, qword [r14 + 8]
movzx eax, byte [r14 + 0x48]
lea rdx, [r10 + 0x58]
mov rcx, qword [rcx]
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0x158], rdx
mov qword [r10 + 0x48], rdx
mov word [r10 + 0x3c], 0
mov word [r10 + 0x40], 3
mov dword [r10 + 0x38], 0
mov dword [rsp + 0xd4], 0x4e20
test rax, rax
mov qword [rsp + 0x58], r10
je 0x4e4d53
imul rax, rax, 0x68
lea r9, [r12 + rax]
add r9, 8
movabs r15, 0xc90ca2e9778d82fb
add r12, 8
mov eax, 0x4e20
xor edx, edx
xor r13d, r13d
xor esi, esi
xor ebx, ebx
mov qword [rsp + 0xa8], r9
nop word cs:[rax + rax]
nop
mov byte [r10 + 0x10], bl
add eax, 0x3e8
mov dword [rsp + 0xd4], eax
mov ecx, dword [r12 + 0x44]
mov r8d, dword [r14 + 0x270]
mov eax, 1
cmp r8d, ecx
je 0x4e4a50
mov ebp, dword [r14 + 0x26c]
cmp ebp, 2
jl 0x4e4a27
add rbp, 0xffffffffffffffff
mov edi, 1
xor eax, eax
nop dword [rax]
cmp dword [r14 + rax*4 + 0x274], ecx
je 0x4e4a2b
add rdi, 1
add rax, 1
cmp rbp, rax
jne 0x4e4a10
xor eax, eax
jmp 0x4e4a50
add eax, 1
mov ecx, 0xffffffff
xor ecx, eax
not ecx
and ecx, eax
mov eax, 1
shl rax, cl
nop word cs:[rax + rax]
nop dword [rax + rax]
mov qword [r10 + 8], rax
test r13d, r13d
setne al
movzx r13d, byte [r12 + 0x3c]
mov ecx, r13d
xor cl, 0x9d
test cl, r13b
setne cl
or cl, al
shr r13d, 4
and r13d, 1
test cl, cl
mov eax, 0
cmove r13d, eax
mov eax, 0
cmovne rax, rsi
mov rcx, rax
and rcx, rdx
xor rdx, rax
or rdx, rcx
mov rax, qword [r12 + 0x20]
cmp byte [rax + 0x3f], 1
mov qword [rsp + 0x60], rdx
mov dword [rsp + 0x90], ebx
mov qword [rsp + 0x70], rsi
jne 0x4e4ba0
lea rax, [r12 + 0x68]
cmp rax, r9
jae 0x4e4bb5
mov rcx, r12
xor ebp, ebp
jmp 0x4e4b1e
xor edi, edi
mov rax, rdi
not rax
mov rcx, rbp
not rcx
mov rsi, r15
not rsi
mov rbx, rax
and rbx, r15
and rdi, rsi
or rdi, rbx
or rax, rcx
and rcx, r15
and rbp, rsi
or rbp, rcx
xor rbp, rdi
not rax
or rsi, r15
and rsi, rax
or rsi, rbp
lea rax, [r10 + 0x68]
mov rcx, r10
mov rbp, rsi
cmp rax, r9
jae 0x4e4bb7
mov r10, rax
test rbp, rbp
jne 0x4e4b34
mov bl, byte [rcx + 0xa4]
mov eax, ebx
xor al, 0xdd
test al, bl
je 0x4e4b7c
mov ecx, dword [rcx + 0xac]
mov edi, 1
cmp r8d, ecx
je 0x4e4ad2
mov esi, dword [r14 + 0x26c]
cmp esi, 2
jl 0x4e4ad0
add rsi, 0xffffffffffffffff
mov eax, 1
xor edi, edi
nop
cmp dword [r14 + rdi*4 + 0x274], ecx
je 0x4e4b80
add rax, 1
add rdi, 1
cmp rsi, rdi
jne 0x4e4b60
jmp 0x4e4ad0
xor esi, esi
jmp 0x4e4b0b
add edi, 1
mov ecx, 0xffffffff
xor ecx, edi
not ecx
and ecx, edi
mov edi, 1
shl rdi, cl
jmp 0x4e4ad2
lea rcx, [rsp + 0xb0]
call fcn.004fe3b0
xor esi, esi
test eax, eax
jne 0x4e4bf2
jmp 0x4e4bcb
xor esi, esi
lea rcx, [rsp + 0xb0]
mov r8, rsi
call fcn.004fd2e0
test eax, eax
jne 0x4e4bf2
mov rax, qword [rsp + 0xb8]
cmp byte [rax + 0x11], 0
je 0x4e4c9f
lea rcx, [rsp + 0xb0]
mov rdx, qword [rsp + 0x60]
mov r8, rsi
call fcn.004ff1f0
mov r10, qword [rsp + 0x58]
mov rsi, qword [r10 + 8]
mov rcx, rsi
not rcx
mov rbx, qword [rsp + 0x70]
mov rdx, rbx
not rdx
movabs r8, 0x62c172048e496ade
mov rbp, r8
not rbp
mov rdi, rcx
and rdi, r8
and rsi, rbp
or rsi, rdi
or rcx, rdx
and rdx, r8
and rbx, rbp
or rbx, rdx
mov rdx, rbx
xor rdx, rsi
not rcx
or rbp, r8
and rbp, rcx
mov rsi, rbp
or rsi, rdx
cmp eax, 0x65
je 0x4e4c70
test eax, eax
mov rdx, qword [rsp + 0x60]
jne 0x4e4cf9
mov rax, qword [rsp + 0xa0]
cmp byte [rax + 0x67], 0
je 0x4e4cd0
jmp 0x4e4cf7
mov ecx, 0x1c
lea rdx, [0x00604491]
mov rdi, r10
call fcn.00408970
mov r10, rdi
mov rdx, qword [rsp + 0x60]
add r12, 0x68
mov r9, qword [rsp + 0xa8]
cmp r12, r9
jb 0x4e4ce1
jmp 0x4e4cf7
mov r10, qword [rsp + 0x58]
mov rax, qword [r10 + 8]
mov rcx, rax
mov rdx, qword [rsp + 0x70]
and rcx, rdx
xor rax, rdx
or rax, rcx
mov rsi, rax
mov rdx, qword [rsp + 0x60]
mov rax, qword [rsp + 0xa0]
cmp byte [rax + 0x67], 0
jne 0x4e4cf7
nop
add r12, 0x68
mov r9, qword [rsp + 0xa8]
cmp r12, r9
jae 0x4e4cf7
mov ebx, dword [rsp + 0x90]
add ebx, 1
mov eax, dword [rsp + 0xd4]
jmp 0x4e49d0
xor eax, eax
mov rsi, r10
mov rsi, qword [r10 + 0x48]
mov rdi, qword [rsp + 0x158]
cmp rsi, rdi
je 0x4e4d6f
mov rbx, qword [rsp + 0xa0]
test rbx, rbx
mov r12, qword [rsp + 0x48]
mov r13, qword [rsp + 0x80]
mov r15, qword [rsp + 0x38]
je 0x4e4db6
cmp qword [rbx + 0x300], 0
je 0x4e4d93
mov rcx, rbx
mov rdx, rsi
mov esi, eax
call fcn.004297f0
mov eax, esi
mov r10, qword [rsp + 0x58]
jmp 0x4e4e40
xor eax, eax
mov r12, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x158]
mov rbx, qword [rsp + 0xa0]
jmp 0x4e4e40
mov r12, qword [rsp + 0x48]
mov r13, qword [rsp + 0x80]
mov r15, qword [rsp + 0x38]
mov r10, qword [rsp + 0x58]
mov rbx, qword [rsp + 0xa0]
jmp 0x4e4e40
cmp qword [rbx + 0x1f0], rsi
jbe 0x4e4db6
cmp qword [rbx + 0x1e0], rsi
jbe 0x4e50e1
cmp qword [rbx + 0x1e8], rsi
jbe 0x4e527a
test rsi, rsi
je 0x4e4e29
mov ebp, eax
cmp dword [0x005f6010], 0
je 0x4e4e30
mov rcx, qword [0x0213b0e8]
test rcx, rcx
je 0x4e4dd8
call qword [0x005f6090]
mov rcx, rsi
call qword [0x005f6048]
mov rcx, qword [0x0213b040]
cdqe
movabs rdx, 0x8a30399430105e94
sub rcx, rdx
sub rcx, rax
add rcx, rdx
mov qword [0x0213b040], rcx
add qword [0x0213b088], 0xffffffffffffffff
mov rcx, rsi
call qword [0x005f6038]
mov rcx, qword [0x0213b0e8]
test rcx, rcx
je 0x4e4e39
call qword [0x005f60a0]
jmp 0x4e4e39
mov r10, qword [rsp + 0x58]
jmp 0x4e4e40
mov rcx, rsi
call qword [0x005f6038]
mov r10, qword [rsp + 0x58]
mov eax, ebp
mov ebp, dword [r10 + 0x38]
mov ecx, ebp
xor ecx, 0xffffbbff
test ecx, ebp
je 0x4e5395
mov ecx, ebp
xor ecx, 0xfffffbff
test ecx, ebp
je 0x4e4efb
mov ecx, dword [r10 + 0x1c]
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
je 0x4e4efb
mov rsi, r10
mov rsi, qword [r10 + 0x28]
test rsi, rsi
je 0x4e4f62
cmp dword [0x005f6010], 0
je 0x4e4f55
mov ebx, eax
mov rcx, qword [0x0213b0e8]
test rcx, rcx
je 0x4e4ea6
call qword [0x005f6090]
mov rcx, rsi
call qword [0x005f6048]
mov rcx, qword [0x0213b040]
cdqe
movabs rdx, 0x1aaa99109f9ca0f1
sub rcx, rdx
sub rcx, rax
add rcx, rdx
mov qword [0x0213b040], rcx
add qword [0x0213b088], 0xffffffffffffffff
mov rcx, rsi
call qword [0x005f6038]
mov rcx, qword [0x0213b0e8]
test rcx, rcx
mov eax, ebx
je 0x4e4f62
call qword [0x005f60a0]
mov eax, ebx
jmp 0x4e4f62
not ebp
or ebp, 0xffffbfff
cmp ebp, 0xffffffff
je 0x4e5395
mov rcx, qword [r10 + 0x20]
test rcx, rcx
je 0x4e5395
mov ebp, eax
mov rdx, qword [rcx + 0x20]
mov rcx, rbx
mov rsi, r10
call fcn.00408130
mov rsi, qword [rsi + 0x20]
test rbx, rbx
je 0x4e5062
cmp qword [rbx + 0x300], 0
je 0x4e503f
mov rcx, rbx
mov rdx, rsi
call fcn.004297f0
jmp 0x4e5386
mov rcx, rsi
mov esi, eax
call qword [0x005f6038]
mov eax, esi
mov r10, qword [rsp + 0x58]
and byte [r10 + 0x1c], 0xfe
mov qword [r10 + 0x28], 0
jmp 0x4e5395
mov r12, qword [rsp + 0xc0]
mov ecx, dword [rbp + 0x4c]
lea r15, [rdi + 0x80]
mov dword [r12 + 0x38], 0
mov word [r12 + 0x3e], 0
mov qword [rsp + 0xe0], r15
mov qword [rsp + 0xe8], r15
mov byte [rsp + 0x108], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0xf0], xmm0
movabs rax, 0x8200000000
mov qword [rsp + 0x100], rax
mov dword [rsp + 0x60], ecx
mov dword [rsp + 0x10c], ecx
mov word [rsp + 0x109], 0x101
mov word [rsp + 0x138], 0xffff
lea rcx, [rsp + 0xe0]
call fcn.004fcd00
test rax, rax
je 0x4e5022
lea rsi, [rsp + 0xe0]
cmp qword [rax + 0x28], 0
je 0x4e5295
mov rcx, rsi
call fcn.004fcd00
test rax, rax
jne 0x4e500a
mov rbx, qword [rbx + 0x10]
test rbx, rbx
je 0x4e52be
xorps xmm6, xmm6
lea rsi, [rsp + 0xe0]
jmp 0x4e5119
cmp qword [rbx + 0x1f0], rsi
jbe 0x4e5062
cmp qword [rbx + 0x1e0], rsi
jbe 0x4e5362
cmp qword [rbx + 0x1e8], rsi
jbe 0x4e5375
test rsi, rsi
je 0x4e5386
cmp dword [0x005f6010], 0
je 0x4e526c
mov rcx, qword [0x0213b0e8]
test rcx, rcx
je 0x4e508a
call qword [0x005f6090]
mov rcx, rsi
call qword [0x005f6048]
cdqe
sub qword [0x0213b040], rax
movabs rax, 0xcb599cb87c233e3c
mov rcx, rax
not rcx
add rcx, qword [0x0213b088]
add rcx, rax
mov qword [0x0213b088], rcx
mov rcx, rsi
call qword [0x005f6038]
mov rcx, qword [0x0213b0e8]
test rcx, rcx
je 0x4e5386
call qword [0x005f60a0]
jmp 0x4e5386
mov rcx, qword [rbx + 0x1d8]
mov qword [rsi], rcx
mov qword [rbx + 0x1d8], rsi
mov r10, qword [rsp + 0x58]
jmp 0x4e4e40
xor r13d, r13d
movzx eax, word [rbx + 0x5e]
cmp r13d, eax
je 0x4e63f2
mov rbx, qword [rbx + 0x28]
test rbx, rbx
je 0x4e52be
cmp byte [rbx + 0x62], 0
je 0x4e510c
cmp qword [rbx + 0x48], 0
jne 0x4e510c
movzx eax, word [rbx + 0x5e]
cmp ax, 3
ja 0x4e510c
mov ecx, dword [rbx + 0x64]
mov edx, ecx
xor edx, 0xfffffff7
xor r14d, r14d
test edx, ecx
setne cl
test ax, ax
je 0x4e50fc
mov r14b, cl
shl r14d, 7
or r14d, 2
xor r13d, r13d
mov qword [rsp + 0xe0], r15
mov qword [rsp + 0xe8], r15
mov byte [rsp + 0x108], 0
lea rax, [rsp + 0xf0]
movups xmmword [rax], xmm6
mov dword [rsp + 0x104], r14d
mov dword [rsp + 0x100], 0
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x10c], eax
mov word [rsp + 0x109], 0x101
mov rax, qword [rbx + 8]
mov rcx, qword [rbx + 0x18]
movzx eax, word [rax + r13*2]
mov dx, 0xffff
cmp ax, word [rcx + 0x34]
je 0x4e5229
test ax, ax
js 0x4e51e5
movzx edx, ax
mov rcx, qword [rcx + 8]
lea rdx, [rdx + rdx*2]
movzx ecx, byte [rcx + rdx*8 + 0xc]
mov byte [rsp + 0x108], cl
mov rcx, qword [rbx + 0x40]
mov rcx, qword [rcx + r13*8]
mov qword [rsp + 0xf0], rcx
mov edx, eax
jmp 0x4e5229
mov edx, eax
cmp ax, 0xfffe
jne 0x4e5229
mov rax, qword [rbx + 0x50]
mov rcx, r13
shl rcx, 5
mov rax, qword [rax + rcx + 8]
mov qword [rsp + 0xf8], rax
mov rax, qword [rbx + 0x40]
mov rax, qword [rax + r13*8]
mov qword [rsp + 0xf0], rax
mov word [rsp + 0x138], 0xfffe
mov rcx, rsi
call fcn.004fd1a0
jmp 0x4e5233
mov word [rsp + 0x138], dx
jmp 0x4e5243
test rax, rax
je 0x4e50ff
cmp qword [rax + 0x28], 0
je 0x4e524d
mov rcx, rsi
call fcn.004fcd00
jmp 0x4e5233
mov rcx, qword [r12 + 0x48]
mov qword [rcx + r13*8], rax
add r13, 1
movzx eax, word [rbx + 0x5e]
cmp r13, rax
jb 0x4e5153
jmp 0x4e50ff
mov rcx, rsi
call qword [0x005f6038]
jmp 0x4e5386
mov rcx, qword [rbx + 0x1c8]
mov qword [rsi], rcx
mov qword [rbx + 0x1c8], rsi
mov r10, qword [rsp + 0x58]
jmp 0x4e4e40
mov dword [r12 + 0x38], 0x1101
mov rcx, qword [r12 + 0x48]
mov qword [rcx], rax
mov word [r12 + 0x3c], 1
mov word [r12 + 0x18], 1
mov word [r12 + 0x14], 0x21
mov eax, dword [r12 + 0x38]
test eax, eax
mov r13, qword [rsp + 0x80]
mov r15, qword [rsp + 0x38]
je 0x4e492e
mov word [r12 + 0x16], 1
mov qword [rdi + 0x3d0], r12
mov qword [r12 + 8], 1
mov ecx, dword [rsp + 0x60]
mov dword [rdi + 0x374], ecx
mov word [rdi + 0x50], 1
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x4e530e
mov cl, byte [rcx]
mov byte [rdi + 0x49], cl
mov ecx, dword [rdi + 0x44]
not ecx
or ecx, 0xfeff
cmp cx, 0xffff
je 0x4e5323
mov byte [rdi + 0x4b], 1
cmp byte [rsp + 0x109], 2
jb 0x4e5353
mov ecx, eax
not ecx
and ecx, 0x794d3c09
mov edx, eax
and edx, 0x86b2c3f6
or edx, ecx
xor edx, 0x796d3c09
and eax, 0x200000
or eax, edx
mov dword [r12 + 0x38], eax
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x38]
jmp 0x4e53f9
mov rax, qword [rbx + 0x1d8]
mov qword [rsi], rax
mov qword [rbx + 0x1d8], rsi
jmp 0x4e5386
mov rax, qword [rbx + 0x1c8]
mov qword [rsi], rax
mov qword [rbx + 0x1c8], rsi
mov r10, qword [rsp + 0x58]
mov qword [r10 + 0x20], 0
mov eax, ebp
mov qword [r10 + 0x48], rdi
mov word [r10 + 0x3c], 0
mov word [r10 + 0x40], 3
mov dword [r10 + 0x38], 0
test eax, eax
jne 0x4e53c4
mov rcx, r15
xor edx, edx
call fcn.004ee270
cmp byte [r13 + 0x67], 0
je 0x4e53d5
test r15, r15
mov rsi, r15
jne 0x4e639d
jmp 0x4e63bc
cmp qword [r15 + 0x10], 0
je 0x4e5403
mov edx, dword [r15 + 0x50]
add edx, 1
mov rcx, r15
call fcn.004ee270
cmp byte [r13 + 0x67], 0
mov rsi, r15
jne 0x4e639d
cmp qword [rsi + 0x10], 0
mov r15, rsi
jne 0x4e541e
mov rax, qword [r13 + 0x30]
mov rcx, rax
xor rcx, 0xffffffffffffefff
test rcx, rax
je 0x4e541e
mov qword [r15 + 0x78], 0xffffffffffffffff
cmp dword [r12 + 0x30], 0
mov rsi, r15
jne 0x4e639d
cmp qword [rsp + 0x1e0], 0
setne cl
mov al, byte [rsi + 0x48]
cmp al, 1
seta dl
xor dl, cl
not dl
and dl, cl
mov ebp, dword [rsp + 0x7c]
mov ecx, ebp
xor ecx, 0xfbff
and cx, bp
sete bl
xor dl, 1
mov qword [rsp + 0x70], 0xffffffffffffffff
cmp bl, dl
je 0x4e54aa
test cx, cx
mov r14, qword [rsp + 0x40]
jne 0x4e54af
mov eax, dword [r13 + 0x60]
mov ecx, eax
not ecx
or ecx, 0xfffffeff
mov qword [rsp + 0x70], 0xffffffffffffffff
cmp ecx, 0xffffffff
mov r15d, dword [rsp + 0x6c]
jne 0x4e54bc
mov rcx, rsi
call fcn.004ef2e0
mov qword [rsp + 0x70], rax
mov al, byte [rsi + 0x48]
movzx r15d, al
jmp 0x4e54b4
mov r14, qword [rsp + 0x40]
mov r15d, dword [rsp + 0x6c]
cmp al, 2
jb 0x4e54d0
mov eax, dword [r13 + 0x60]
not eax
or eax, 0xfff7ffff
cmp eax, 0xffffffff
jne 0x4e54d0
mov rcx, rsi
call fcn.004ef7d0
mov rax, qword [rsi]
movsx ecx, word [rsi + 0x50]
add dword [rax + 0xc8], ecx
movzx ecx, word [rsp + 0x7c]
mov eax, ecx
xor eax, 0xfffb
mov r9d, ecx
test eax, ecx
je 0x4e5587
mov rax, qword [rsi + 0x3d0]
mov edi, dword [rax + 0x38]
mov edx, edi
xor edx, 0xffffefff
test edx, edi
je 0x4e5542
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rcx + 0x28]
mov bl, 1
mov byte [rsi + 0x4a], bl
cmp byte [rdx + 0x30], 0
sets dl
mov ecx, edi
xor ecx, 0xffffffbf
test ecx, edi
sete bl
xor ecx, ecx
test bl, dl
jne 0x4e5589
xor bl, dl
jne 0x4e5589
mov ecx, dword [rsp + 0x7c]
and ecx, 8
and edi, 0xffffffbf
mov dword [rax + 0x38], edi
jmp 0x4e5589
mov ebp, r9d
not ebp
mov edx, ebp
or edx, 0xfffffff7
cmp edx, 0xffffffff
je 0x4e5587
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rcx + 0x28]
cmp byte [rdx + 0x3f], 1
je 0x4e5587
mov ecx, edi
not ecx
or ecx, 0xffffdfff
cmp ecx, 0xffffffff
sete r8b
or ebp, 0xffffffef
cmp ebp, 0xffffffff
sete cl
mov bl, 2
cmp cl, r8b
je 0x4e5515
not ebp
test ebp, ebp
jne 0x4e5515
xor ecx, ecx
test r15d, r15d
jle 0x4e633c
mov dword [rsp + 0xa0], ecx
mov dword [rsp + 0x6c], r15d
not r9d
or r9d, 0xffffffdf
cmp r9d, 0xffffffff
not r9d
mov dword [rsp + 0x90], r9d
setne al
cmp dword [rsp + 0x1f8], 0
setne dl
mov ecx, edx
xor cl, al
or dl, al
xor dl, 1
or dl, cl
mov byte [rsp + 0x58], dl
mov r13, qword [rsp + 0x98]
xor ebp, ebp
jmp 0x4e5626
mov rcx, qword [rdi + 0x88]
mov edx, dword [rdi + 0x90]
add edx, 0xffffffff
movsxd rdx, edx
lea rdx, [rdx + rdx*2]
mov byte [rcx + rdx*8 + 1], 0xf8
mov qword [rcx + rdx*8 + 0x10], rax
mov eax, dword [r14 + 0x38]
mov ecx, eax
xor ecx, 0x40
and ecx, eax
mov dword [r14 + 0x38], ecx
mov byte [rbx + 0x49], 0
mov byte [rbx + 0x4b], 3
add ebp, 1
add r13, 0x70
cmp ebp, dword [rsp + 0x6c]
je 0x4e6043
movzx eax, byte [r13 + 0x40]
imul r14, rax, 0x68
mov rax, qword [rsp + 0x50]
mov r15, qword [rax + r14 + 0x28]
mov rax, qword [r15 + 0x60]
test rax, rax
je 0x4e5676
mov rcx, qword [rsp + 0x80]
mov rcx, qword [rcx + 0x20]
add rcx, 0x18
mov r12d, 0xffffffff
xor edx, edx
nop
add rdx, 1
add r12d, 1
lea rdi, [rcx + 0x20]
cmp qword [rcx], rax
mov rcx, rdi
jne 0x4e5660
jmp 0x4e567c
mov r12d, 0xffff8000
mov rsi, qword [r13 + 0x60]
mov eax, dword [r15 + 0x30]
mov ecx, eax
xor ecx, 0xffffbfff
test ecx, eax
jne 0x4e5a60
mov cl, byte [r15 + 0x3f]
cmp cl, 2
je 0x4e5a60
mov eax, dword [rsi + 0x38]
mov edx, eax
not edx
or edx, 0xfffffbff
cmp edx, 0xffffffff
je 0x4e570a
mov rax, qword [r15 + 0x50]
test rax, rax
je 0x4e56d2
mov rcx, qword [rsp + 0x80]
cmp qword [rax], rcx
je 0x4e56d4
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x4e56bc
xor eax, eax
mov rcx, qword [rsp + 0x50]
mov r8d, dword [rcx + r14 + 0x4c]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x30], 0xfffffff5
mov dword [rsp + 0x20], 0
mov rcx, qword [rsp + 0x40]
mov edx, 0xad
xor r9d, r9d
call fcn.004c62a0
jmp 0x4e5a60
cmp cl, 1
je 0x4e5a60
and eax, 0x40
or eax, dword [rsp + 0x90]
je 0x4e5736
mov rax, qword [rsp + 0x50]
mov al, byte [rax + r14 + 0x44]
mov ecx, eax
xor cl, 0xaf
test cl, al
je 0x4e58ca
mov rcx, qword [rsp + 0x38]
cmp byte [rcx + 0x4a], 0
mov qword [rsp + 0xa8], rsi
je 0x4e5760
mov rdi, qword [rsp + 0x50]
mov eax, dword [rdi + r14 + 0x4c]
mov dword [rcx + 0x30], eax
mov edx, 0x71
mov r9b, 1
jmp 0x4e576d
mov edx, 0x70
xor r9d, r9d
mov rdi, qword [rsp + 0x50]
mov r8d, dword [rdi + r14 + 0x4c]
mov rcx, qword [rsp + 0x48]
mov rsi, qword [rcx + 0x10]
cmp r12d, 1
je 0x4e57b8
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
movsxd rdi, r12d
shl rdi, 5
mov rax, qword [rax + rdi + 8]
cmp byte [rax + 0x11], 0
je 0x4e57b8
mov edi, edx
mov ebx, r8d
mov r8d, dword [r15 + 0x28]
mov rax, qword [r15]
mov qword [rsp + 0x20], rax
mov edx, r12d
call fcn.004c63a0
mov r8d, ebx
mov edx, edi
cmp byte [r15 + 0x30], 0
js 0x4e581d
mov r9d, dword [r15 + 0x28]
movsx edi, word [r15 + 0x38]
mov eax, dword [rsi + 0x90]
cmp dword [rsi + 0x94], eax
jle 0x4e5895
movsxd rcx, eax
lea ebx, [rcx + 1]
mov dword [rsi + 0x90], ebx
mov rbx, qword [rsi + 0x88]
lea rcx, [rcx + rcx*2]
mov byte [rbx + rcx*8], dl
mov word [rbx + rcx*8 + 2], 0
mov dword [rbx + rcx*8 + 4], r8d
mov dword [rbx + rcx*8 + 8], r9d
mov dword [rbx + rcx*8 + 0xc], r12d
mov qword [rbx + rcx*8 + 0x10], 0
mov byte [rbx + rcx*8 + 1], 0
jmp 0x4e58a2
mov rdi, qword [r15 + 0x10]
test rdi, rdi
je 0x4e583c
mov eax, dword [rdi + 0x64]
not eax
or eax, 0xfffffffc
cmp eax, 0xfffffffd
je 0x4e583e
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x4e5826
xor edi, edi
mov r9d, dword [rdi + 0x58]
movsxd rax, dword [rsi + 0x90]
cmp dword [rsi + 0x94], eax
jle 0x4e5917
lea ecx, [rax + 1]
mov dword [rsi + 0x90], ecx
mov rcx, qword [rsi + 0x88]
lea rax, [rax + rax*2]
mov byte [rcx + rax*8], dl
mov word [rcx + rax*8 + 2], 0
mov dword [rcx + rax*8 + 4], r8d
mov dword [rcx + rax*8 + 8], r9d
mov dword [rcx + rax*8 + 0xc], r12d
mov qword [rcx + rax*8 + 0x10], 0
mov byte [rcx + rax*8 + 1], 0
jmp 0x4e5924
mov dword [rsp + 0x20], r12d
mov rcx, rsi
call fcn.0047df60
mov rcx, qword [rsi]
cmp byte [rcx + 0x67], 0
jne 0x4e5973
mov rcx, qword [rsi + 0x88]
cdqe
lea rax, [rax + rax*2]
mov byte [rcx + rax*8 + 1], 0xfd
mov dword [rcx + rax*8 + 0x10], edi
jmp 0x4e5973
cmp r12d, 1
je 0x4e5a60
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
movsxd rcx, r12d
shl rcx, 5
mov rax, qword [rax + rcx + 8]
cmp byte [rax + 0x11], 0
je 0x4e5a60
mov r8d, dword [r15 + 0x28]
mov rax, qword [r15]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x48]
mov edx, r12d
xor r9d, r9d
call fcn.004c63a0
jmp 0x4e5a60
mov dword [rsp + 0x20], r12d
mov rcx, rsi
call fcn.0047df60
mov rcx, qword [rsp + 0x48]
mov rsi, qword [rcx + 0x10]
mov rdx, rdi
call fcn.004c65a0
test rax, rax
je 0x4e5973
mov rcx, qword [rsi]
cmp byte [rcx + 0x67], 0
je 0x4e5952
mov edx, 0xfffffff8
mov r8, rax
call fcn.00444fc0
jmp 0x4e5973
mov rcx, qword [rsi + 0x88]
mov edx, dword [rsi + 0x90]
add edx, 0xffffffff
movsxd rdx, edx
lea rdx, [rdx + rdx*2]
mov byte [rcx + rdx*8 + 1], 0xf8
mov qword [rcx + rdx*8 + 0x10], rax
mov rax, qword [rsp + 0x38]
cmp byte [rax + 0x4a], 0
mov rsi, qword [rsp + 0xa8]
jne 0x4e5a32
cmp word [r15 + 0x36], 0x3f
jg 0x4e5a32
mov eax, dword [r15 + 0x30]
mov ecx, eax
xor ecx, 0xffffff1f
test ecx, eax
jne 0x4e5a32
mov eax, dword [rsi + 0x38]
mov ecx, eax
xor ecx, 0xffbfbfff
test ecx, eax
jne 0x4e5a32
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + r14 + 0x58]
bsr r8, rax
xor r8d, 0xffffffc0
add r8d, 0x41
test rax, rax
mov eax, 0
cmove r8d, eax
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
cmp byte [rax + 0x67], 0
jne 0x4e5a32
mov rax, qword [rsp + 0x40]
mov ecx, dword [rax + 0x90]
add ecx, 0xffffffff
mov rax, qword [rax + 0x88]
movsxd rcx, ecx
lea rcx, [rcx + rcx*2]
cmp byte [rax + rcx*8 + 1], 0
je 0x4e5a22
lea rdx, [rax + rcx*8]
mov rcx, qword [rsp + 0x40]
mov r9d, 0xfffffffd
call fcn.0047e190
jmp 0x4e5a32
lea rdx, [rax + rcx*8]
add rdx, 1
mov dword [rax + rcx*8 + 0x10], r8d
mov byte [rdx], 0xfd
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x90]
test eax, eax
jle 0x4e5a60
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx + 0x88]
add eax, 0xffffffff
lea rax, [rax + rax*2]
mov edx, dword [rsp + 0xa0]
mov word [rcx + rax*8 + 2], dx
mov eax, dword [rsi + 0x38]
not eax
or eax, 0xfffffdff
cmp eax, 0xffffffff
je 0x4e5c8e
mov dword [rsp + 0x60], ebp
mov rax, r15
mov rbp, rsi
mov rsi, qword [rsi + 0x20]
cmp byte [r15 + 0x30], 0
js 0x4e5af6
mov rax, qword [rsp + 0x38]
cmp byte [rax + 0x4a], 0
je 0x4e5b3d
mov rax, qword [rsp + 0x50]
add rax, r14
add rax, 0x28
mov rax, qword [rax]
mov rax, qword [rax + 0x10]
mov ecx, dword [rsp + 0x1f8]
mov r8d, ecx
test rax, rax
mov dl, 1
je 0x4e5ae6
mov r8d, ecx
cmp rax, rsi
je 0x4e5ae6
mov r8d, ecx
test dl, dl
je 0x4e5ae6
mov r8d, ecx
nop dword [rax]
add r8d, 1
mov rax, qword [rax + 0x28]
test rax, rax
je 0x4e5ae6
cmp rax, rsi
je 0x4e5ae6
test dl, dl
jne 0x4e5ad0
mov rax, qword [rsp + 0x38]
mov dword [rax + 0x34], r8d
mov edx, 0x71
jmp 0x4e5b68
cmp dword [rsp + 0x90], 0
sete dl
setne al
mov edi, dword [rsi + 0x64]
mov ecx, edi
xor ecx, 0xfffffffc
and ecx, edi
cmp ecx, 2
setne bl
sete cl
cmp dl, bl
jne 0x4e5a88
or al, cl
xor al, 1
jne 0x4e5a88
mov eax, dword [r13 + 4]
mov dword [r13 + 8], eax
mov rsi, rbp
mov ebp, dword [rsp + 0x60]
jmp 0x4e5c8e
mov edx, 0x65
mov eax, dword [rsp + 0x1f8]
mov r8d, eax
cmp byte [rsp + 0x58], 0
je 0x4e5b68
mov rcx, qword [rsp + 0x48]
mov r8d, dword [rcx + 0x34]
lea eax, [r8 + 1]
mov dword [rcx + 0x34], eax
mov edx, 0x70
mov dword [r13 + 8], r8d
mov r9d, dword [rsi + 0x58]
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 0x90]
cmp dword [rcx + 0x94], eax
jle 0x4e5bc1
lea ebx, [rax + 1]
mov dword [rcx + 0x90], ebx
mov rcx, qword [rcx + 0x88]
lea rax, [rax + rax*2]
mov byte [rcx + rax*8], dl
mov word [rcx + rax*8 + 2], 0
mov dword [rcx + rax*8 + 4], r8d
mov dword [rcx + rax*8 + 8], r9d
mov dword [rcx + rax*8 + 0xc], r12d
mov qword [rcx + rax*8 + 0x10], 0
mov byte [rcx + rax*8 + 1], 0
jmp 0x4e5bcb
mov dword [rsp + 0x20], r12d
call fcn.0047df60
mov rcx, qword [rsp + 0x48]
mov rdi, qword [rcx + 0x10]
mov rdx, rsi
call fcn.004c65a0
test rax, rax
mov rsi, rbp
mov ebp, dword [rsp + 0x60]
je 0x4e5c21
mov rcx, qword [rdi]
cmp byte [rcx + 0x67], 0
je 0x4e5c00
mov edx, 0xfffffff8
mov r8, rax
call fcn.00444fc0
jmp 0x4e5c21
mov rcx, qword [rdi + 0x88]
mov edx, dword [rdi + 0x90]
add edx, 0xffffffff
movsxd rdx, edx
lea rdx, [rdx + rdx*2]
mov byte [rcx + rdx*8 + 1], 0xf8
mov qword [rcx + rdx*8 + 0x10], rax
mov ecx, dword [rsi + 0x38]
mov eax, ecx
not eax
or eax, 0xfffffff0
cmp eax, 0xffffffff
sete dl
mov eax, ecx
xor eax, 0xffe77ffd
and eax, ecx
sete cl
cmp cl, dl
je 0x4e5c8e
test eax, eax
jne 0x4e5c8e
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x44]
not eax
or eax, 0xfffe
cmp ax, 0xffff
jne 0x4e5c8e
mov rax, qword [rsp + 0x38]
cmp byte [rax + 0x4b], 2
je 0x4e5c8e
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x90]
test eax, eax
jle 0x4e5c8e
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx + 0x88]
add eax, 0xffffffff
lea rax, [rax + rax*2]
mov word [rcx + rax*8 + 2], 2
test r12d, r12d
js 0x4e5cde
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx + 0xa0]
test rax, rax
cmove rax, rcx
mov edx, 1
mov ecx, r12d
shl edx, cl
mov ebx, 0xfffffffe
rol ebx, cl
mov edi, dword [rax + 0x74]
mov ecx, edi
not ecx
or ebx, ecx
cmp ebx, 0xffffffff
jne 0x4e5cde
mov ecx, edi
and ecx, edx
xor edi, edx
or edi, ecx
mov dword [rax + 0x74], edi
cmp r12d, 1
jne 0x4e5cde
mov rcx, rax
call fcn.004306d0
mov rax, qword [rsp + 0x50]
mov al, byte [rax + r14 + 0x44]
mov ecx, eax
xor cl, 0xef
test cl, al
mov r12, qword [rsp + 0x48]
je 0x4e5615
mov r14, rsi
mov rdi, qword [rsp + 0x38]
mov rax, qword [rdi]
mov rcx, qword [rax]
mov edx, 0x24
call fcn.00429840
test rax, rax
je 0x4e5dac
mov rsi, rax
mov rax, qword [rdi + 0x70]
mov qword [rsi], rax
mov qword [rsi + 8], 0x14
mov qword [rdi + 0x70], rsi
mov rdi, rsi
add rdi, 0x10
mov qword [r13 + 0x38], rdi
mov eax, dword [r12 + 0x34]
lea ecx, [rax + 1]
mov dword [r12 + 0x34], ecx
mov dword [rsi + 0x10], eax
mov r9d, dword [r12 + 0x38]
add r9d, 1
mov dword [r12 + 0x38], r9d
mov dword [rsi + 0x14], r9d
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 0x90]
cmp dword [rbx + 0x94], eax
jle 0x4e5db9
lea ecx, [rax + 1]
mov dword [rbx + 0x90], ecx
mov rcx, qword [rbx + 0x88]
lea rax, [rax + rax*2]
movabs rdx, 0x100000000004d
mov qword [rcx + rax*8], rdx
mov dword [rcx + rax*8 + 8], r9d
mov dword [rcx + rax*8 + 0xc], 0
mov qword [rcx + rax*8 + 0x10], 0
jmp 0x4e5dd4
mov qword [r13 + 0x38], 0
jmp 0x4e5615
mov dword [rsp + 0x20], 0
mov rcx, rbx
mov edx, 0x4d
mov r8d, 0x10000
call fcn.0047df60
mov r9d, dword [r12 + 0x38]
add r9d, 1
mov dword [r12 + 0x38], r9d
mov dword [rsi + 0x18], r9d
movsxd rax, dword [rbx + 0x90]
cmp dword [rbx + 0x94], eax
jle 0x4e5e29
lea ecx, [rax + 1]
mov dword [rbx + 0x90], ecx
mov rcx, qword [rbx + 0x88]
lea rax, [rax + rax*2]
mov qword [rcx + rax*8], 0x4b
mov dword [rcx + rax*8 + 8], r9d
mov dword [rcx + rax*8 + 0xc], 0
mov qword [rcx + rax*8 + 0x10], 0
jmp 0x4e5e41
mov dword [rsp + 0x20], 0
mov rcx, rbx
mov edx, 0x4b
xor r8d, r8d
call fcn.0047df60
cmp byte [r15 + 0x30], 0
js 0x4e5e93
mov r8d, dword [rdi]
mov rdi, qword [rsp + 0x40]
movsxd rax, dword [rdi + 0x90]
cmp dword [rdi + 0x94], eax
jle 0x4e5ecb
lea ecx, [rax + 1]
mov dword [rdi + 0x90], ecx
mov rcx, qword [rdi + 0x88]
lea rax, [rax + rax*2]
mov dword [rcx + rax*8], 0x76
mov dword [rcx + rax*8 + 4], r8d
mov qword [rcx + rax*8 + 8], 1
mov qword [rcx + rax*8 + 0x10], 0
jmp 0x4e5ee6
mov rsi, qword [r15 + 0x10]
test rsi, rsi
je 0x4e5f9e
mov rbx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
mov eax, dword [rsi + 0x64]
not eax
or eax, 0xfffffffc
cmp eax, 0xfffffffd
je 0x4e5faa
mov rsi, qword [rsi + 0x28]
test rsi, rsi
jne 0x4e5eaa
xor esi, esi
jmp 0x4e5faa
mov dword [rsp + 0x20], 0
mov rcx, rdi
mov edx, 0x76
mov r9d, 1
call fcn.0047df60
mov rbx, qword [rsp + 0x38]
mov rsi, qword [r12]
mov edx, 0x29
mov rcx, rsi
call fcn.00429840
test rax, rax
je 0x4e5f34
mov rcx, rax
add rcx, 0x28
mov qword [rax + 0x18], rcx
mov dword [rax + 6], 0x10001
mov cl, byte [rsi + 0x64]
mov byte [rax + 4], cl
mov qword [rax + 0x10], rsi
mov dword [rax], 1
mov byte [rax + 0x28], 0
mov qword [rax + 0x20], 0
jmp 0x4e6024
cmp byte [rsi + 0x67], 0
jne 0x4e55fe
cmp byte [rsi + 0x68], 0
jne 0x4e55fe
mov byte [rsi + 0x67], 1
cmp dword [rsi + 0xe4], 0
jle 0x4e5f5f
mov dword [rsi + 0x198], 1
add dword [rsi + 0x1a0], 1
mov word [rsi + 0x1a4], 0
mov rcx, qword [rsi + 0x160]
test rcx, rcx
je 0x4e55fe
lea rdx, [0x005fc480]
call fcn.00419aa0
mov rax, qword [rsi + 0x160]
mov dword [rax + 0x18], 7
jmp 0x4e55fe
xor esi, esi
mov rbx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
movzx r9d, word [rsi + 0x5e]
mov r8d, dword [rdi]
movsxd rax, dword [rcx + 0x90]
cmp dword [rcx + 0x94], eax
jle 0x4e5ff9
lea edx, [rax + 1]
mov dword [rcx + 0x90], edx
mov rcx, qword [rcx + 0x88]
lea rax, [rax + rax*2]
mov dword [rcx + rax*8], 0x76
mov dword [rcx + rax*8 + 4], r8d
mov dword [rcx + rax*8 + 8], r9d
mov dword [rcx + rax*8 + 0xc], 0
mov qword [rcx + rax*8 + 0x10], 0
jmp 0x4e600b
mov dword [rsp + 0x20], 0
mov edx, 0x76
call fcn.0047df60
mov rdi, qword [r12 + 0x10]
mov rcx, r12
mov rdx, rsi
call fcn.004c65a0
test rax, rax
je 0x4e55fe
mov rcx, qword [rdi]
cmp byte [rcx + 0x67], 0
je 0x4e55dd
mov edx, 0xfffffff8
mov r8, rax
call fcn.00444fc0
jmp 0x4e55fe
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x90]
mov rsi, qword [rsp + 0x38]
mov dword [rsi + 0x54], eax
mov r13, qword [rsp + 0x80]
cmp byte [r13 + 0x67], 0
jne 0x4e639d
mov r15d, dword [rsp + 0x6c]
xor ebp, ebp
xorps xmm6, xmm6
mov r14, qword [rsp + 0x40]
jmp 0x4e6112
mov rcx, qword [rsp + 0x38]
mov edx, ebp
mov r8, qword [rsp + 0x98]
mov r9, qword [rsp + 0x70]
call fcn.004f0f40
cmp byte [r13 + 0x67], 0
mov rsi, qword [rsp + 0x38]
jne 0x4e639d
mov rcx, r12
mov rdx, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x98]
mov r8, rdi
mov r9d, dword [rsp + 0x7c]
call fcn.004f1aa0
mov rdx, qword [rsp + 0x40]
mov eax, dword [rdx + 0x90]
mov dword [rdi + 0x20], eax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
mov rcx, r12
mov r8, rsi
mov r9d, ebp
call fcn.004f2020
mov qword [rsp + 0x70], rax
mov eax, dword [rdi + 0x18]
mov dword [rsi + 0x38], eax
add rbp, 1
add rdi, 0x70
mov qword [rsp + 0x98], rdi
cmp r15, rbp
je 0x4e63da
cmp dword [r12 + 0x30], 0
mov rsi, qword [rsp + 0x38]
jne 0x4e639d
mov rcx, qword [rsp + 0x98]
mov rax, qword [rcx + 0x60]
mov ebx, dword [rax + 0x38]
movzx eax, byte [rcx + 0x40]
imul rdi, rax, 0x68
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + rdi + 0x48]
mov ecx, eax
xor ecx, 0xffffffef
test ecx, eax
je 0x4e62cd
mov ecx, eax
xor ecx, 0xfffffff7
test ecx, eax
je 0x4e61b7
mov rax, qword [rsp + 0x50]
mov r9d, dword [rax + rdi + 0x38]
mov r8d, dword [rax + rdi + 0x3c]
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 0x90]
cmp dword [rcx + 0x94], eax
jle 0x4e61f3
lea edx, [rax + 1]
mov dword [rcx + 0x90], edx
mov rcx, qword [rcx + 0x88]
lea rax, [rax + rax*2]
mov dword [rcx + rax*8], 9
mov dword [rcx + rax*8 + 4], r8d
mov dword [rcx + rax*8 + 8], r9d
mov dword [rcx + rax*8 + 0xc], 0
mov qword [rcx + rax*8 + 0x10], 0
jmp 0x4e62cd
mov esi, dword [r14 + 0x90]
cmp dword [r14 + 0x94], esi
jle 0x4e620a
movsxd rax, esi
lea ecx, [rax + 1]
mov dword [r14 + 0x90], ecx
mov rcx, qword [r14 + 0x88]
lea rax, [rax + rax*2]
mov byte [rcx + rax*8], 0xe
movups xmmword [rcx + rax*8 + 1], xmm6
mov qword [rcx + rax*8 + 0x10], 0
jmp 0x4e6227
mov dword [rsp + 0x20], 0
mov edx, 9
call fcn.0047df60
jmp 0x4e62cd
mov dword [rsp + 0x20], 0
mov rcx, r14
mov edx, 0xe
xor r8d, r8d
xor r9d, r9d
call fcn.0047df60
mov esi, eax
mov rax, qword [rsp + 0x50]
mov r9d, dword [rax + rdi + 0x38]
mov r8d, dword [rax + rdi + 0x3c]
movsxd rax, dword [r14 + 0x90]
cmp dword [r14 + 0x94], eax
jle 0x4e627f
lea ecx, [rax + 1]
mov dword [r14 + 0x90], ecx
mov rcx, qword [r14 + 0x88]
lea rax, [rax + rax*2]
mov dword [rcx + rax*8], 9
mov dword [rcx + rax*8 + 4], r8d
mov dword [rcx + rax*8 + 8], r9d
mov dword [rcx + rax*8 + 0xc], 0
mov qword [rcx + rax*8 + 0x10], 0
jmp 0x4e6294
mov dword [rsp + 0x20], 0
mov rcx, r14
mov edx, 9
call fcn.0047df60
mov eax, dword [r14 + 0x90]
mov rcx, qword [r14]
cmp byte [rcx + 0x67], 0
lea rcx, [0x0213b3e8]
jne 0x4e62ca
lea ecx, [rax - 1]
test esi, esi
cmovns ecx, esi
movsxd rcx, ecx
lea rcx, [rcx + rcx*2]
shl rcx, 3
mov rdx, qword [rsp + 0x40]
add rcx, qword [rdx + 0x88]
mov dword [rcx + 8], eax
not ebx
mov eax, ebx
or eax, 0xffbfbfff
cmp eax, 0xffffffff
mov rsi, qword [rsp + 0x38]
je 0x4e60a6
or ebx, 0xffffbfff
cmp ebx, 0xffffffff
je 0x4e607d
mov rdx, qword [rsp + 0x98]
movzx eax, byte [rdx + 0x40]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0x50]
lea r8, [rcx + rax]
add r8, 8
mov qword [rsp + 0x20], rdx
mov rcx, r12
mov rdx, qword [rsp + 0x88]
mov r9, qword [rsp + 0x70]
call fcn.004ef8e0
cmp byte [r13 + 0x67], 0
mov rsi, qword [rsp + 0x38]
je 0x4e60a6
jmp 0x4e639d
mov eax, dword [r14 + 0x90]
mov dword [rsi + 0x54], eax
cmp byte [r13 + 0x67], 0
jne 0x4e639d
jmp 0x4e63ea
mov rax, qword [rdx]
mov qword [rsi + 0x68], rax
mov rax, qword [rdx + 8]
mov rcx, qword [rdx + 0x50]
mov qword [rax + 0x40], rcx
movups xmm0, xmmword [rdx + 0x40]
movups xmmword [rax + 0x30], xmm0
movups xmm0, xmmword [rdx + 0x30]
movups xmmword [rax + 0x20], xmm0
movups xmm0, xmmword [rdx + 0x20]
movups xmmword [rax + 0x10], xmm0
movups xmm0, xmmword [rdx + 0x10]
movups xmmword [rax], xmm0
mov rax, qword [rsi]
mov rcx, qword [rax]
call fcn.00408130
mov rdx, qword [rsi + 0x68]
test rdx, rdx
jne 0x4e6360
mov eax, dword [rsi + 0x40]
mov dword [r12 + 0xc8], eax
mov rcx, r13
mov rdx, rsi
call fcn.004f7680
xor eax, eax
movaps xmm6, xmmword [rsp + 0x160]
add rsp, 0x178
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x90]
mov rsi, qword [rsp + 0x38]
mov dword [rsi + 0x58], eax
mov rax, rsi
jmp 0x4e63be
mov dword [r12 + 0x38], 0x1201
mov eax, dword [rbx + 0x64]
mov ecx, eax
xor ecx, 0xffffffdf
test ecx, eax
je 0x4e6412
mov dword [r12 + 0x38], 0x1241
jmp 0x4e6429
mov rax, qword [rbp + 0x58]
mov rcx, qword [rbx + 0x68]
not rcx
not rax
or rax, rcx
cmp rax, 0xffffffffffffffff
je 0x4e6407
mov word [r12 + 0x3c], r13w
mov word [r12 + 0x18], r13w
mov qword [r12 + 0x20], rbx
mov word [r12 + 0x14], 0x27
jmp 0x4e52be