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

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x5b8
mov byte [rsp + 0xac], 0x94
movzx eax, byte [0x1800c65f8]
mov byte [rsp + 0x2c], al
mov dword [rsp + 0x4c], 0x44c0a7c9
mov eax, 0x609
mov word [rsp + 0x28], ax
movzx eax, byte [0x1800c6560]
mov byte [rsp + 0x20], al
movzx eax, word [0x1800c64d4]
mov word [rsp + 0x34], ax
movzx eax, byte [0x1800c64d1]
movzx eax, al
mov word [rsp + 0x38], ax
mov eax, 0x3b
mov word [rsp + 0x40], ax
mov dword [rsp + 0x58], 0x80e4
mov byte [rsp + 0x21], 0xf9
mov rax, qword [0x1800c6568]
mov byte [rsp + 0x23], al
mov byte [rsp + 0x22], 0xfa
mov dword [rsp + 0x50], 0xa39f8f32
mov eax, 0xffffb6ba
mov word [rsp + 0x44], ax
movzx eax, word [0x1800c64d4]
mov qword [rsp + 0x70], rax
mov eax, dword [0x1800c65d0]
mov dword [rsp + 0x54], eax
movzx eax, word [0x1800c6524]
mov word [rsp + 0x3c], ax
mov eax, dword [0x1800c65c8]
mov byte [rsp + 0x24], al
mov qword [rsp + 0x60], 0x9e1a
mov qword [rsp + 0x68], 0x58
mov dword [rsp + 0x48], 0xa33e
movzx eax, word [0x1800c6570]
mov word [rsp + 0x30], ax
mov byte [rsp + 0x25], 0x7f
movzx eax, byte [0x1800c64d7]
mov byte [rsp + 0xa8], al
movzx eax, byte [0x1800c64d3]
mov byte [rsp + 0xb8], al
movzx eax, byte [0x1800c64d1]
mov byte [rsp + 0xa9], al
mov eax, 0xdd2e
mov word [rsp + 0x400], ax
mov eax, 0x89
mov word [rsp + 0x3f0], ax
mov dword [rsp + 0x4d4], 0xe062c22b
movsx eax, word [0x1800c64c4]
mov dword [rsp + 0x4d0], eax
movzx eax, word [0x1800c65e0]
mov word [rsp + 0x3f4], ax
mov eax, 0xffffdd84
mov word [rsp + 0x3f8], ax
movzx eax, word [0x1800c658c]
mov word [rsp + 0x3fc], ax
mov byte [rsp + 0xaa], 0xa1
mov byte [rsp + 0xab], 0x13
mov eax, dword [0x1800c6570]
mov qword [rsp + 0x560], rax
mov qword [rsp + 0x568], 0x59
mov rax, qword [0x1800c6580]
mov qword [rsp + 0x570], rax
mov rax, qword [0x1800c6578]
mov qword [rsp + 0x578], rax
movsx eax, byte [rsp + 0x22]
movzx ecx, byte [0x1800c64d7]
movsx ecx, cl
cmp eax, ecx
jge 0x18003863f
movzx eax, byte [rsp + 0x21]
not eax
test eax, eax
je 0x180038567
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x180038567
mov dword [rsp + 0x2ec], 1
jmp 0x180038572
mov dword [rsp + 0x2ec], 0
movzx eax, byte [0x1800c64a7]
mov ecx, dword [rsp + 0x2ec]
add ecx, eax
mov eax, ecx
test eax, eax
je 0x1800385a6
mov eax, dword [rsp + 0x50]
mov eax, eax
movabs rcx, 0x643e7bc8e538d
imul rax, rcx
mov word [rsp + 0x40], ax
jmp 0x18003863f
movsx rax, byte [rsp + 0x22]
movabs rcx, 0x156a58d14c940
cmp rax, rcx
jg 0x18003860a
movzx eax, byte [0x1800c64d1]
movzx eax, al
add eax, 0x94e7763
mov dword [rsp + 0x54], eax
mov rax, qword [0x1800c65c0]
test rax, rax
je 0x1800385e9
mov eax, dword [0x1800c65a4]
mov dword [rsp + 0x148], eax
jmp 0x1800385fa
movzx eax, byte [0x1800c64d6]
movzx eax, al
mov dword [rsp + 0x148], eax
mov eax, dword [rsp + 0x148]
mov qword [0x1800c6580], rax
jmp 0x18003863f
movzx eax, word [rsp + 0x30]
not eax
mov ecx, dword [0x1800c655c]
sub ecx, eax
mov eax, ecx
not eax
test eax, eax
je 0x18003863f
movsx eax, word [rsp + 0x38]
movzx ecx, byte [str.ezaltsecid]
movzx ecx, cl
not ecx
xor eax, ecx
xor eax, dword [rsp + 0x54]
cdqe
mov qword [rsp + 0x60], rax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0xbc], eax
mov eax, dword [rsp + 0xbc]
add eax, 0x425
mov dword [rsp + 0xa0], eax
movzx eax, byte [rsp + 0x21]
test eax, eax
jne 0x1800386d2
mov eax, dword [0x1800c65ac]
movzx ecx, word [rsp + 0x3c]
movsx ecx, cx
cmp eax, ecx
jl 0x1800386ad
mov eax, 1
imul rax, rax, 0xd80
lea rcx, [0x1805fcba0]
movzx eax, byte [rcx + rax]
mov dword [rsp + 0x50], eax
mov rax, qword [0x1800c65e8]
mov ecx, 0xee0a3f5a
sub rax, rcx
mov word [0x1800c65cc], ax
jmp 0x1800386d0
movzx eax, byte [rsp + 0x20]
test eax, eax
jne 0x1800386d0
movzx eax, byte [0x1800c64d7]
movsx eax, al
movzx ecx, word [0x1800c6574]
movzx ecx, cx
add eax, ecx
mov byte [rsp + 0x20], al
jmp 0x180038700
movzx eax, byte [rsp + 0x23]
movsx eax, al
cmp dword [0x1800c6570], eax
jb 0x180038700
mov eax, 8
imul rax, rax, 0xa3
lea rcx, [0x180598560]
movzx eax, word [rcx + rax]
mov word [0x1800c65fc], ax
mov eax, dword [rsp + 0xbc]
add eax, 0x46c
mov dword [rsp + 0x4cc], eax
mov eax, 1
mov word [rsp + 0x44], ax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
mov eax, dword [0x1800c65b8]
sub eax, 0x33
mov word [0x1800c6524], ax
movsx eax, word [rsp + 0x44]
mov dword [rsp + 0x404], eax
cmp dword [rsp + 0x404], 1
je 0x180038767
jmp 0x1800387a3
movzx eax, word [rsp + 0x28]
movzx eax, ax
movabs rcx, 0x5f71bb83689f
add rax, rcx
mov qword [0x1800c6598], rax
movsx eax, word [0x1800c65cc]
movsx ecx, word [rsp + 0x44]
sub eax, ecx
movsx ecx, word [0x1800c65cc]
add ecx, eax
mov eax, ecx
mov word [0x1800c65cc], ax
mov eax, dword [rsp + 0xbc]
add eax, 0x536
mov dword [rsp + 0x4c8], eax
mov eax, dword [rsp + 0x50]
mov eax, eax
movabs rcx, 0xbcef3db944429
add rax, rcx
movsxd rcx, dword [rsp + 0x54]
sub rcx, rax
mov rax, rcx
mov dword [rsp + 0x54], eax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0xc0], eax
movsx eax, word [0x1800c65cc]
test eax, eax
je 0x18003881e
lea rax, [rsp + 0x550]
lea rcx, str.windows_1252
mov rdi, rax
mov rsi, rcx
mov ecx, 0xd
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x550]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0xc0]
add eax, 0x2c9
mov dword [rsp + 0x408], eax
movsx eax, word [0x1800c6560]
cmp eax, dword [0x1800c6564]
ja 0x18003884d
mov dword [rsp + 0x150], 1
jmp 0x180038858
mov dword [rsp + 0x150], 0
movsx eax, word [0x1800c6560]
cmp eax, 0x4a
jg 0x180038871
mov dword [rsp + 0x14c], 1
jmp 0x18003887c
mov dword [rsp + 0x14c], 0
mov eax, dword [rsp + 0x14c]
cmp dword [rsp + 0x150], eax
jg 0x1800389c6
movzx eax, word [0x1800c64a4]
cwde
movzx ecx, word [rsp + 0x3c]
movsx ecx, cx
cmp eax, ecx
jne 0x1800388ce
movzx eax, byte [rsp + 0x21]
movabs rcx, 0x25b3e073b8693
xor rax, rcx
mov qword [0x1800c65f0], rax
mov eax, 8
mov word [0x1800c6574], ax
jmp 0x1800389c4
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x1800388ef
movzx eax, word [rsp + 0x34]
movzx eax, ax
and eax, 0x6d
mov word [0x1800c6524], ax
jmp 0x1800389c4
movsx eax, word [rsp + 0x44]
test eax, eax
jne 0x180038905
mov dword [rsp + 0x154], 1
jmp 0x180038910
mov dword [rsp + 0x154], 0
mov rax, qword [rsp + 0x70]
test rax, rax
jne 0x180038935
movzx eax, byte [0x1800c64c7]
movzx eax, al
test eax, eax
jne 0x180038935
mov dword [rsp + 0x158], 0
jmp 0x180038940
mov dword [rsp + 0x158], 1
mov eax, dword [rsp + 0x154]
imul eax, dword [rsp + 0x158]
test eax, eax
jne 0x1800389c4
mov eax, dword [rsp + 0x4c]
movzx ecx, byte [0x1800c64a6]
movzx ecx, cl
movzx edx, word [rsp + 0x28]
movzx edx, dx
mov rdi, qword [0x1800c65f0]
add rdi, rdx
mov rdx, rdi
sub rcx, rdx
add rax, rcx
test rax, rax
jne 0x18003898e
mov dword [rsp + 0x15c], 1
jmp 0x180038999
mov dword [rsp + 0x15c], 0
mov eax, dword [rsp + 0x15c]
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x60]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
jmp 0x1800389e0
mov eax, 1
imul rax, rax, 0x3d
lea rcx, [0x18060e040]
movsx rax, byte [rcx + rax]
mov qword [rsp + 0x68], rax
mov eax, dword [rsp + 0xc0]
add eax, 0x7f78
mov dword [rsp + 0x514], eax
mov eax, dword [rsp + 0xc0]
add eax, 0x292
mov dword [rsp + 0x4d8], eax
mov eax, dword [rsp + 0x408]
imul eax, eax, 0x19
xor eax, 0x4681
mov dword [rsp + 0x340], eax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0xc4], eax
mov eax, dword [0x1800c655c]
test eax, eax
je 0x180038a45
movzx eax, byte [rsp + 0x20]
shl eax, 2
mov word [rsp + 0x28], ax
mov byte [rsp + 0x2c], 0x8c
mov eax, dword [rsp + 0xc4]
add eax, 0xdae1
mov dword [rsp + 0x40c], eax
mov eax, dword [rsp + 0xc4]
add eax, 0x1f7
mov dword [rsp + 0x4dc], eax
mov byte [0x1800c64d7], 4
mov rax, qword [rsp + 0x68]
mov ecx, 0xf1e5f703
imul rax, rcx
mov dword [rsp + 0x4c], eax
movsx eax, word [0x1800c6560]
test eax, eax
je 0x180038aa0
movzx eax, word [0x1800c64a4]
cwde
mov dword [rsp + 0x160], eax
jmp 0x180038aad
mov eax, dword [0x1800c65a0]
mov dword [rsp + 0x160], eax
movzx eax, word [rsp + 0x160]
mov word [rsp + 0x28], ax
movzx eax, byte [0x1800c64d7]
mov byte [rsp + 0x84], al
cmp byte [rsp + 0x84], 0
je 0x180038b07
cmp byte [rsp + 0x84], 1
je 0x180038b2e
cmp byte [rsp + 0x84], 2
je 0x180038b62
cmp byte [rsp + 0x84], 3
je 0x180038ba9
cmp byte [rsp + 0x84], 4
je 0x180038bb0
jmp 0x180038bca
movzx eax, word [0x1800c64d4]
movzx ecx, word [0x1800c64d4]
add eax, ecx
movzx ecx, word [0x1800c64d4]
sub ecx, eax
mov eax, ecx
mov word [0x1800c64d4], ax
jmp 0x180038bca
movzx eax, word [rsp + 0x30]
imul eax, eax, 0xe3
imul eax, dword [0x1800c6570]
movzx ecx, byte [rsp + 0x24]
movzx ecx, cl
movzx edx, word [0x1800c65fc]
movzx edx, dx
add ecx, edx
imul ecx, ecx, 0x94
add eax, ecx
mov byte [rsp + 0x20], al
jmp 0x180038bca
movzx eax, byte [rsp + 0x23]
movsx eax, al
movzx ecx, byte [0x1800c64a6]
movzx ecx, cl
sub eax, ecx
not eax
movzx ecx, word [0x1800c6604]
movzx ecx, cx
sub eax, ecx
movzx ecx, word [rsp + 0x3c]
movsx ecx, cx
movzx edx, byte [rsp + 0x20]
imul ecx, edx
movzx edx, word [rsp + 0x28]
movzx edx, dx
add ecx, edx
add eax, ecx
mov word [0x1800c6574], ax
jmp 0x180038bca
mov byte [rsp + 0x23], 0x8b
jmp 0x180038bca
movsx rax, byte [rsp + 0x22]
mov rcx, qword [0x1800c6568]
imul rax, rcx
mov byte [rsp + 0x22], al
mov byte [rsp + 0x20], 0xb8
mov eax, dword [rsp + 0xc4]
add eax, 0x68e3
mov dword [rsp + 0x4e0], eax
mov dword [rsp + 0x48], 4
mov dword [0x1800c65a4], 0xc100
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x88], eax
cmp dword [rsp + 0x88], 0
je 0x180038c39
cmp dword [rsp + 0x88], 1
je 0x180038c69
cmp dword [rsp + 0x88], 2
je 0x180038c96
cmp dword [rsp + 0x88], 3
je 0x180038cdf
cmp dword [rsp + 0x88], 4
je 0x180038ce6
jmp 0x180038d0c
mov rax, qword [0x1800c6598]
dec rax
mov qword [0x1800c6598], rax
movsx rax, word [rsp + 0x38]
mov ecx, 8
imul rcx, rcx, 1
lea rdx, [0x1805e2580]
mov qword [rdx + rcx], rax
jmp 0x180038d0c
movzx eax, word [rsp + 0x34]
movzx eax, ax
movsx ecx, byte [rsp + 0x22]
xor eax, ecx
movzx ecx, word [rsp + 0x34]
movzx ecx, cx
add ecx, eax
mov eax, ecx
mov word [rsp + 0x34], ax
mov qword [0x1800c6580], 0xb0
jmp 0x180038d0c
movzx eax, word [rsp + 0x28]
movzx eax, ax
mov rcx, qword [0x1800c6608]
sub rcx, rax
mov rax, rcx
movabs rcx, 0xf82ddbf8c8ff1
sub rcx, rax
mov rax, rcx
mov dword [0x1800c6588], eax
movzx eax, byte [rsp + 0x23]
movsx eax, al
sub eax, dword [rsp + 0x4c]
movzx ecx, byte [rsp + 0x23]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x23], al
jmp 0x180038d0c
mov byte [rsp + 0x21], 1
jmp 0x180038d0c
movsx rax, word [0x1800c6524]
movabs rcx, 0x18bb08c9f8a2b
sub rax, rcx
mov word [0x1800c6560], ax
mov eax, 0xb2
mov word [rsp + 0x34], ax
mov eax, dword [rsp + 0x40c]
or eax, 0x311f
add eax, 0xffff08f7
mov dword [rsp + 0x344], eax
movzx eax, byte [rsp + 0x20]
mov ecx, dword [0x1800c65a4]
cmp eax, ecx
jb 0x180038d55
movsx eax, word [rsp + 0x38]
mov ecx, dword [0x1800c65a4]
imul ecx, eax
mov eax, ecx
mov ecx, dword [0x1800c65a4]
add ecx, eax
mov eax, ecx
mov dword [0x1800c65a4], eax
jmp 0x180038dae
mov rax, qword [0x1800c6578]
movzx ecx, byte [rsp + 0x21]
cmp rax, rcx
jne 0x180038d7c
movzx eax, byte [0x1800c64d6]
movzx eax, al
add eax, 0xd86b
mov word [rsp + 0x30], ax
jmp 0x180038dae
cmp dword [rsp + 0x54], 0
jne 0x180038dae
mov eax, dword [0x1800c65a4]
mov eax, eax
mov rcx, qword [0x1800c6598]
xor rcx, rax
mov rax, rcx
mov qword [0x1800c6550], rax
movzx eax, byte [rsp + 0x25]
movzx eax, al
sar eax, 3
mov dword [rsp + 0x50], eax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0xc8], eax
movzx eax, byte [0x1800c64a6]
movzx eax, al
cmp dword [0x1800c6570], eax
je 0x180038dda
mov dword [rsp + 0x164], 1
jmp 0x180038de5
mov dword [rsp + 0x164], 0
mov eax, dword [rsp + 0x164]
not eax
test eax, eax
je 0x180038dff
mov eax, dword [0x1800c65c8]
mov word [0x1800c6574], ax
mov eax, dword [rsp + 0xc8]
add eax, 0x27c
mov dword [rsp + 0x410], eax
movzx eax, word [rsp + 0x28]
movzx eax, ax
test eax, eax
je 0x180038fd4
cmp dword [rsp + 0x54], 0
je 0x180038e53
movzx eax, word [0x18051ec90]
mov word [rsp + 0x3c], ax
movzx eax, word [rsp + 0x30]
mov ecx, dword [rsp + 0x50]
xor eax, ecx
movzx ecx, word [rsp + 0x30]
add ecx, eax
mov eax, ecx
mov word [rsp + 0x30], ax
jmp 0x180038fd4
movzx eax, word [0x1800c64a4]
cwde
not eax
movzx ecx, word [rsp + 0x3c]
movsx ecx, cx
cmp eax, ecx
jge 0x180038e77
mov qword [rsp + 0x428], 1
jmp 0x180038e83
mov qword [rsp + 0x428], 0
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x428]
xor rcx, rax
mov rax, rcx
test rax, rax
je 0x180038eb3
movzx eax, word [rsp + 0x30]
movsx ecx, word [0x1800c6560]
add eax, ecx
mov word [rsp + 0x30], ax
jmp 0x180038fd4
cmp qword [rsp + 0x60], 0
jne 0x180038ec8
mov dword [rsp + 0x168], 1
jmp 0x180038ed3
mov dword [rsp + 0x168], 0
movsx eax, byte [0x1800c64d2]
cmp dword [rsp + 0x168], eax
jle 0x180038ef0
mov dword [rsp + 0x16c], 1
jmp 0x180038efb
mov dword [rsp + 0x16c], 0
movzx eax, word [0x1800c6574]
movzx eax, ax
cmp dword [rsp + 0x16c], eax
je 0x180038f65
movzx eax, word [rsp + 0x3c]
cwde
sar eax, 4
mov byte [rsp + 0x23], al
movzx eax, byte [rsp + 0x21]
mov ecx, dword [0x1800c65a0]
add ecx, eax
mov eax, ecx
not eax
mov ecx, dword [0x1800c65ac]
not ecx
sub ecx, dword [rsp + 0x54]
add eax, ecx
test eax, eax
jne 0x180038f4b
mov dword [rsp + 0x170], 1
jmp 0x180038f56
mov dword [rsp + 0x170], 0
mov eax, dword [rsp + 0x170]
mov dword [0x1800c65ac], eax
jmp 0x180038fd4
mov eax, dword [0x1800c6570]
movabs rcx, 0x60a9da823eff7
cmp rax, rcx
je 0x180038f88
mov qword [rsp + 0x430], 1
jmp 0x180038f94
mov qword [rsp + 0x430], 0
movabs rax, 0x11b2766c231b5
cmp qword [rsp + 0x430], rax
jg 0x180038fd4
movzx eax, byte [rsp + 0x20]
movzx ecx, word [0x1800c64a4]
movsx ecx, cx
not ecx
movsxd rcx, ecx
mov rdx, qword [0x1800c65b0]
imul rdx, rcx
mov rcx, rdx
sub rax, rcx
mov word [0x1800c6604], ax
mov eax, dword [rsp + 0xc8]
add eax, 0x25e
mov dword [rsp + 0x308], eax
mov rax, qword [0x1800c6550]
add rax, 0xe6
movzx ecx, byte [rsp + 0x21]
sub rcx, rax
mov rax, rcx
mov byte [rsp + 0x21], al
mov eax, dword [rsp + 0xc8]
add eax, 0x22a
mov dword [rsp + 0x4e4], eax
movzx eax, word [0x1800c64a4]
cwde
test eax, eax
je 0x180039030
movzx eax, word [0x18051ec90]
mov word [rsp + 0x28], ax
jmp 0x18003907e
movsx eax, word [rsp + 0x38]
test eax, eax
jne 0x180039046
mov dword [rsp + 0x174], 1
jmp 0x180039051
mov dword [rsp + 0x174], 0
movzx eax, byte [0x1800c64d1]
movzx eax, al
cmp dword [rsp + 0x174], eax
jle 0x18003907e
mov eax, dword [rsp + 0x48]
add eax, 0x6c511fa3
movsx ecx, byte [0x1800c64d2]
sub ecx, eax
mov eax, ecx
mov byte [0x1800c64d2], al
mov rax, qword [0x1800c6568]
sub rax, 0xc09b
mov qword [rsp + 0x68], rax
mov dword [0x1800c65f8], 0xcf
mov eax, dword [rsp + 0x410]
mov ecx, dword [rsp + 0x308]
or eax, ecx
mov ecx, 0x5c2
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xa0]
mov edx, dword [rsp + 0xa0]
xor ecx, edx
mov edx, dword [rsp + 0xa0]
mov edi, dword [rsp + 0xa0]
sub edx, edi
imul ecx, edx
sub eax, ecx
mov dword [rsp + 0x348], eax
mov rax, qword [rsp + 0x70]
movzx ecx, word [rsp + 0x3c]
movsx rcx, cx
cmp rax, rcx
jg 0x180039111
mov rax, qword [rsp + 0x68]
shl rax, 8
mov dword [0x1800c65a4], eax
movzx eax, word [0x18051ec90]
mov word [0x1800c6558], ax
jmp 0x18003916b
movzx eax, byte [rsp + 0x21]
sub eax, dword [rsp + 0x4c]
test eax, eax
jne 0x18003912c
mov qword [rsp + 0x438], 1
jmp 0x180039138
mov qword [rsp + 0x438], 0
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x438]
sub rcx, rax
mov rax, rcx
test rax, rax
je 0x18003916b
mov eax, 1
imul rax, rax, 0x2c2e
lea rcx, [0x1805cda60]
movsx eax, byte [rcx + rax]
mov dword [rsp + 0x58], eax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0xcc], eax
mov eax, dword [rsp + 0x58]
xor eax, 0x4a79
mov byte [rsp + 0x2c], al
movsx eax, word [rsp + 0x38]
sub eax, 0x3dc6ad3a
mov dword [0x1800c65b8], eax
mov eax, dword [rsp + 0xcc]
add eax, 0x215
mov dword [rsp + 0x30c], eax
mov eax, dword [0x1800c65f8]
sub eax, 0xac
mov word [rsp + 0x34], ax
mov eax, dword [rsp + 0xcc]
add eax, 0x27e
mov dword [rsp + 0x4e8], eax
mov eax, dword [rsp + 0xcc]
add eax, 0x250
mov dword [rsp + 0xd0], eax
movzx eax, word [0x1800c6604]
movzx eax, ax
cmp qword [0x1800c6598], rax
je 0x18003920c
movzx eax, word [0x1800c6574]
movzx eax, ax
test eax, eax
je 0x18003920c
mov dword [rsp + 0x178], 1
jmp 0x180039217
mov dword [rsp + 0x178], 0
mov eax, dword [rsp + 0x178]
not eax
test eax, eax
je 0x180039237
movsx eax, word [0x1800c6558]
mov ecx, dword [rsp + 0x4c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0x30c]
or eax, ecx
mov ecx, dword [rsp + 0xd0]
mov edx, dword [rsp + 0xd0]
or ecx, edx
or eax, ecx
xor eax, 0x77a
mov dword [rsp + 0x350], eax
movzx eax, word [0x1800c658c]
movzx ecx, byte [0x1800c64a7]
cmp eax, ecx
jl 0x180039279
jmp 0x180039297
movzx eax, word [rsp + 0x3c]
cwde
add eax, 0x8b
mov byte [0x1800c64c7], al
mov eax, dword [rsp + 0x58]
sub eax, 0xb0e79d4d
mov dword [rsp + 0x50], eax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0xd4], eax
mov eax, dword [rsp + 0x4c]
inc eax
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0xd4]
add eax, 0x2a6
mov dword [rsp + 0x4ec], eax
movzx eax, word [rsp + 0x28]
movzx eax, ax
add eax, 0xc
cdqe
mov qword [0x1800c65d0], rax
mov rax, qword [rsp + 0x68]
add rax, 0x84
mov word [0x1800c6560], ax
mov eax, dword [rsp + 0xd4]
add eax, 0x8c19
mov dword [rsp + 0xd8], eax
movsx eax, word [0x1800c6558]
movzx ecx, word [rsp + 0x34]
movzx ecx, cx
add eax, ecx
movsx ecx, word [0x1800c6558]
and ecx, eax
mov eax, ecx
mov word [0x1800c6558], ax
mov eax, dword [rsp + 0xd4]
add eax, 0x217
mov dword [rsp + 0x4f0], eax
mov eax, dword [0x1800c65a0]
mov rcx, qword [rsp + 0x68]
imul rax, rcx
mov dword [0x1800c65a0], eax
mov eax, dword [rsp + 0xd8]
mov ecx, dword [rsp + 0xd8]
sub eax, ecx
mov ecx, dword [rsp + 0xd8]
imul ecx, ecx, 0x703
imul eax, ecx
xor eax, 0x56c
mov dword [rsp + 0x354], eax
movsxd rax, dword [rsp + 0x54]
movzx ecx, word [0x1800c64a4]
movsx rcx, cx
movabs rdx, 0xfff12891c7c7e96a
add rcx, rdx
add rax, rcx
mov word [0x1800c64a4], ax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0xdc], eax
mov eax, 2
imul rax, rax, 0x38
lea rcx, [0x180598b30]
movzx eax, word [rcx + rax]
mov dword [0x1800c655c], eax
mov eax, dword [rsp + 0xdc]
add eax, 0x220
mov dword [rsp + 0x310], eax
mov eax, dword [rsp + 0xdc]
add eax, 0x284
mov dword [rsp + 0x4f4], eax
movzx eax, byte [0x1800c64d6]
movzx eax, al
mov rcx, qword [0x1800c6550]
sub rax, rcx
test rax, rax
jne 0x180039423
movzx eax, byte [rsp + 0x24]
movzx eax, al
test eax, eax
je 0x180039423
mov rax, qword [0x1800c6550]
test rax, rax
je 0x180039423
mov dword [rsp + 0x18c], 1
jmp 0x18003942e
mov dword [rsp + 0x18c], 0
movzx eax, word [rsp + 0x3c]
cwde
test eax, eax
jne 0x180039445
mov dword [rsp + 0x17c], 1
jmp 0x180039450
mov dword [rsp + 0x17c], 0
cmp dword [rsp + 0x17c], 0x49eb17d2
je 0x18003946a
mov dword [rsp + 0x184], 1
jmp 0x180039475
mov dword [rsp + 0x184], 0
mov eax, dword [rsp + 0x48]
cmp dword [0x1800c6600], eax
jle 0x18003948e
mov dword [rsp + 0x180], 1
jmp 0x180039499
mov dword [rsp + 0x180], 0
mov eax, dword [rsp + 0x180]
cmp dword [rsp + 0x184], eax
je 0x1800394b6
mov dword [rsp + 0x188], 1
jmp 0x1800394c1
mov dword [rsp + 0x188], 0
mov eax, dword [rsp + 0x188]
cmp dword [rsp + 0x18c], eax
jg 0x180039606
movzx eax, word [rsp + 0x34]
movzx eax, ax
test eax, eax
je 0x180039503
movsx eax, byte [0x1800c64d2]
not eax
cdqe
mov rcx, qword [rsp + 0x70]
sub rcx, rax
mov rax, rcx
mov qword [0x1800c6598], rax
jmp 0x180039606
movzx eax, word [rsp + 0x28]
movzx eax, ax
test eax, eax
je 0x180039562
mov eax, dword [rsp + 0x48]
xor eax, 0xffffffb8
test eax, eax
jne 0x180039528
mov qword [rsp + 0x440], 1
jmp 0x180039534
mov qword [rsp + 0x440], 0
movzx eax, byte [str.ezaltsecid]
movzx eax, al
sub rax, qword [0x1800c6608]
add rax, qword [rsp + 0x440]
mov byte [rsp + 0x21], al
mov eax, dword [rsp + 0x4c]
shr eax, 3
mov word [rsp + 0x28], ax
jmp 0x180039606
cmp qword [0x1800c6598], 0
je 0x180039591
mov eax, dword [0x1800c65ac]
imul eax, eax, 0x588e
mov byte [0x1800c64d3], al
movzx eax, byte [rsp + 0x20]
add eax, 0x23
cdqe
mov qword [0x1800c65e8], rax
jmp 0x180039606
movzx eax, byte [0x1800c64c7]
movzx eax, al
test eax, eax
jne 0x1800395ad
mov qword [rsp + 0x448], 1
jmp 0x1800395b9
mov qword [rsp + 0x448], 0
mov rax, qword [0x1800c6578]
add rax, qword [rsp + 0x448]
test rax, rax
je 0x180039606
movsx eax, word [rsp + 0x44]
test eax, eax
jne 0x1800395e3
mov dword [rsp + 0x190], 1
jmp 0x1800395ee
mov dword [rsp + 0x190], 0
mov eax, dword [rsp + 0x4c]
not eax
mov ecx, dword [rsp + 0x190]
add ecx, eax
mov eax, ecx
mov word [0x1800c658c], ax
mov eax, dword [rsp + 0xdc]
add eax, 0xeb1f
mov dword [rsp + 0x314], eax
movsx eax, word [rsp + 0x44]
sub eax, 0x4b
mov word [0x1800c6558], ax
mov eax, dword [rsp + 0x310]
mov ecx, dword [rsp + 0x314]
xor eax, ecx
mov ecx, 0xed92
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x358], eax
movzx eax, byte [rsp + 0x23]
movsx eax, al
movzx ecx, byte [rsp + 0x20]
xor eax, ecx
movzx ecx, byte [rsp + 0x23]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x23], al
mov eax, dword [0x18051ec90]
mov dword [rsp + 0xe0], eax
mov byte [rsp + 0x22], 0x71
movsx rax, byte [0x1800c64d2]
movsx rcx, word [rsp + 0x38]
mov rdx, qword [rsp + 0x70]
imul rcx, rdx
add rax, rcx
mov byte [0x1800c64d3], al
mov eax, dword [rsp + 0xe0]
add eax, 0xfe03
mov dword [rsp + 0x4f8], eax
mov rax, qword [0x1800c65c0]
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
not rax
mov word [rsp + 0x38], ax
mov eax, dword [rsp + 0xe0]
add eax, 0xe70c
mov dword [rsp + 0x31c], eax
mov eax, dword [rsp + 0xe0]
add eax, 0x219
mov dword [rsp + 0x318], eax
mov eax, dword [rsp + 0x318]
mov ecx, dword [rsp + 0x31c]
or eax, ecx
mov ecx, 0xe7cc
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x360], eax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0xe4], eax
mov eax, dword [rsp + 0xe4]
add eax, 0x215
mov dword [rsp + 0x4fc], eax
mov dword [0x1800c65f8], 1
movzx eax, word [rsp + 0x40]
cwde
not eax
mov ecx, dword [0x1800c65b8]
add eax, ecx
movzx ecx, byte [rsp + 0x25]
movzx ecx, cl
movzx edx, word [0x1800c65fc]
movzx edx, dx
sub ecx, edx
sub eax, ecx
not eax
mov dword [rsp + 0x58], eax
movsx rax, word [rsp + 0x38]
movabs rcx, 0xd91e69be26eaa
add rax, rcx
movzx ecx, word [0x1800c658c]
sub rcx, rax
mov rax, rcx
mov word [0x1800c658c], ax
mov eax, dword [0x1800c65f8]
mov dword [rsp + 0x194], eax
cmp dword [rsp + 0x194], 0
je 0x1800397ac
cmp dword [rsp + 0x194], 1
je 0x1800397de
jmp 0x180039828
movzx eax, byte [rsp + 0x25]
movzx eax, al
movsx ecx, byte [rsp + 0x22]
imul eax, ecx
movzx ecx, byte [rsp + 0x2c]
movsx ecx, cl
imul ecx, ecx, 0x26
sub eax, ecx
mov word [0x1800c65fc], ax
mov eax, dword [0x1800c65c8]
shl eax, 1
mov byte [rsp + 0x22], al
jmp 0x180039828
movzx eax, byte [0x1800c64d7]
movsx eax, al
test eax, eax
jne 0x1800397f9
mov dword [rsp + 0x198], 1
jmp 0x180039804
mov dword [rsp + 0x198], 0
movzx eax, word [0x1800c64d4]
movzx ecx, byte [rsp + 0x24]
movzx ecx, cl
and eax, ecx
mov ecx, dword [rsp + 0x50]
not ecx
add ecx, dword [rsp + 0x198]
xor eax, ecx
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0xe4]
add eax, 0xac7e
mov dword [rsp + 0x500], eax
cmp dword [rsp + 0x4c], 0
je 0x18003986d
movsx eax, byte [rsp + 0x22]
movzx ecx, byte [0x1800c64a6]
movzx ecx, cl
imul eax, ecx
movzx ecx, byte [0x1800c64d3]
not ecx
add eax, ecx
cdqe
mov qword [0x1800c65d8], rax
jmp 0x180039952
movzx eax, word [rsp + 0x3c]
cwde
test eax, eax
jne 0x180039884
mov dword [rsp + 0x19c], 1
jmp 0x18003988f
mov dword [rsp + 0x19c], 0
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x19c], eax
jne 0x1800398a9
mov dword [rsp + 0x1a0], 1
jmp 0x1800398b4
mov dword [rsp + 0x1a0], 0
movzx eax, byte [rsp + 0x20]
cmp dword [rsp + 0x1a0], eax
jl 0x180039952
mov eax, dword [0x1800c655c]
add eax, 0x91fdbc28
test eax, eax
jne 0x1800398e2
mov dword [rsp + 0x1a8], 1
jmp 0x1800398ed
mov dword [rsp + 0x1a8], 0
movsx rax, word [0x1800c6558]
mov rcx, qword [0x1800c65b0]
or rcx, rax
mov rax, rcx
test rax, rax
jne 0x180039914
mov dword [rsp + 0x1a4], 1
jmp 0x18003991f
mov dword [rsp + 0x1a4], 0
mov eax, dword [rsp + 0x1a4]
mov ecx, dword [rsp + 0x1a8]
sub ecx, eax
mov eax, ecx
mov dword [0x1800c65b8], eax
mov rax, qword [0x1800c6580]
mov rcx, qword [0x1800c6598]
xor rcx, rax
mov rax, rcx
mov qword [0x1800c6598], rax
mov eax, dword [rsp + 0xe4]
add eax, 0x28f
mov dword [rsp + 0x320], eax
mov eax, dword [0x1800c65b8]
xor eax, 0x6d1f
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x320]
mov ecx, 0x3e1f
sub ecx, eax
mov eax, ecx
add eax, 0xffffc81d
mov dword [rsp + 0x368], eax
movsx eax, word [0x1800c65cc]
cmp dword [0x1800c65a8], eax
jle 0x1800399ff
movzx eax, word [0x1800c64a4]
cwde
test eax, eax
je 0x1800399e4
mov rax, qword [0x1800c65d8]
not rax
test rax, rax
je 0x1800399e4
movsx rax, byte [rsp + 0x22]
movabs rcx, 0xa256bc6fa7893
sub rax, rcx
mov word [0x1800c6560], ax
mov eax, dword [rsp + 0x58]
sub eax, 0xd4
mov word [rsp + 0x40], ax
jmp 0x1800399fd
movsxd rax, dword [rsp + 0x54]
movabs rcx, 0x2e182d85161ae
imul rax, rcx
mov dword [0x1800c65ac], eax
jmp 0x180039a6b
movzx eax, word [rsp + 0x3c]
cwde
cmp eax, 0xdccf6fc3
jbe 0x180039a19
mov dword [rsp + 0x1ac], 1
jmp 0x180039a24
mov dword [rsp + 0x1ac], 0
mov eax, dword [rsp + 0x54]
or eax, 0x1191
cmp dword [rsp + 0x1ac], eax
jge 0x180039a6b
movsx rax, word [0x1800c65cc]
movabs rcx, 0x95b7e1df7ee16
add rax, rcx
mov word [0x1800c64c4], ax
mov eax, dword [0x1800c655c]
cdqe
movabs rcx, 0x27c5c917734ea
sub rax, rcx
mov byte [rsp + 0x23], al
mov eax, dword [0x18051ec90]
mov dword [rsp + 0xe8], eax
movzx eax, byte [0x1800c64d6]
movzx eax, al
movzx ecx, byte [rsp + 0x24]
movzx ecx, cl
sub eax, ecx
movzx ecx, byte [0x1800c64d6]
movzx ecx, cl
xor ecx, eax
mov eax, ecx
mov byte [0x1800c64d6], al
mov eax, dword [rsp + 0xe8]
add eax, 0xd895
mov dword [rsp + 0x32c], eax
movzx eax, word [0x1800c65e0]
cwde
mov ecx, dword [0x1800c65f8]
add ecx, eax
mov eax, ecx
test eax, eax
jne 0x180039ad7
mov qword [rsp + 0x450], 1
jmp 0x180039ae3
mov qword [rsp + 0x450], 0
mov rax, qword [0x1800c6590]
mov rcx, qword [rsp + 0x450]
imul rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x68]
mov rdx, qword [0x1800c65d8]
add rdx, rcx
mov rcx, rdx
movzx edx, word [rsp + 0x40]
movsx edx, dx
movsx edi, word [rsp + 0x38]
not edi
imul edx, edi
movsxd rdx, edx
sub rcx, rdx
xor rax, rcx
mov byte [0x1800c64d1], al
mov eax, dword [rsp + 0xe8]
add eax, 0x155d
mov dword [rsp + 0x328], eax
movzx eax, word [rsp + 0x28]
movzx eax, ax
test eax, eax
je 0x180039b5c
mov rax, qword [0x1800c65b0]
mov qword [rsp + 0x458], rax
jmp 0x180039b6b
mov rax, qword [0x1800c6598]
mov qword [rsp + 0x458], rax
mov eax, dword [rsp + 0x458]
mov dword [rsp + 0x54], eax
movzx eax, byte [0x18051ec90]
mov byte [rsp + 0x25], al
mov eax, dword [rsp + 0xe8]
add eax, 0x26f
mov dword [rsp + 0x324], eax
mov eax, dword [rsp + 0x324]
xor eax, 0x69
mov ecx, dword [rsp + 0x328]
mov edx, dword [rsp + 0x32c]
or ecx, edx
or eax, ecx
add eax, 0xffff2590
mov dword [rsp + 0x36c], eax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0xec], eax
movzx eax, byte [0x1800c64d1]
movzx eax, al
mov word [0x1800c65e0], ax
movzx eax, word [0x1800c65fc]
movzx eax, ax
imul eax, eax, 0x7427e468
movzx ecx, byte [str.ezaltsecid]
movzx ecx, cl
sub ecx, eax
mov eax, ecx
mov byte [str.ezaltsecid], al
mov eax, dword [rsp + 0xec]
add eax, 0xa715
mov dword [rsp + 0x330], eax
movzx eax, byte [0x1800c64d1]
movzx eax, al
cmp eax, dword [rsp + 0x54]
jne 0x180039c34
movsx eax, word [rsp + 0x38]
movsx ecx, word [0x1800c65cc]
sub eax, ecx
mov word [rsp + 0x38], ax
mov eax, dword [rsp + 0xec]
add eax, 0x22f
mov dword [rsp + 0x1b0], eax
mov eax, dword [rsp + 0xec]
add eax, 0x205
mov dword [rsp + 0x334], eax
movzx eax, word [rsp + 0x40]
movsx rax, ax
movabs rcx, 0x327295a11c0e8
and rax, rcx
mov dword [0x1800c65bc], eax
movsx eax, word [0x1800c6558]
movzx ecx, byte [rsp + 0x21]
add eax, ecx
movsx ecx, word [0x1800c6558]
sub ecx, eax
mov eax, ecx
mov word [0x1800c6558], ax
mov eax, dword [rsp + 0x330]
mov ecx, dword [rsp + 0x1b0]
imul eax, ecx
mov ecx, dword [rsp + 0x1b0]
mov edx, dword [rsp + 0x334]
imul ecx, edx
sub eax, ecx
xor eax, 0x16868d7
mov dword [rsp + 0x370], eax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0xf0], eax
mov eax, dword [0x1800c65a4]
cmp dword [0x1800c6570], eax
jae 0x180039ce3
jmp 0x180039cee
movsx eax, byte [rsp + 0x22]
mov dword [0x1800c6570], eax
mov eax, dword [rsp + 0xf0]
add eax, 0x218
mov dword [rsp + 0x338], eax
movzx eax, byte [rsp + 0x21]
test eax, eax
je 0x180039d21
movzx eax, word [rsp + 0x30]
mov rcx, qword [rsp + 0x60]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
jmp 0x180039d3a
cmp dword [0x1800c6570], 0
je 0x180039d3a
mov eax, dword [0x1800c65ac]
imul eax, eax, 0x530ddd18
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0xf0]
add eax, 0x279
mov dword [rsp + 0x504], eax
mov rax, qword [0x1800c65b0]
imul rax, rax, 0x4011
movzx ecx, word [rsp + 0x28]
movzx ecx, cx
sub rcx, rax
mov rax, rcx
mov word [rsp + 0x28], ax
mov eax, dword [rsp + 0xf0]
add eax, 0x23f
mov dword [rsp + 0x33c], eax
movzx eax, byte [rsp + 0x20]
movsx ecx, word [0x1800c64c4]
cmp eax, ecx
jne 0x180039daa
movzx eax, word [rsp + 0x28]
movzx eax, ax
movzx ecx, byte [rsp + 0x23]
movsx ecx, cl
add eax, ecx
mov word [rsp + 0x28], ax
jmp 0x180039df5
movzx eax, word [rsp + 0x30]
test eax, eax
jne 0x180039dc0
mov dword [rsp + 0x1b4], 1
jmp 0x180039dcb
mov dword [rsp + 0x1b4], 0
movzx eax, word [0x1800c64a4]
cwde
cmp dword [rsp + 0x1b4], eax
jne 0x180039df5
movsxd rax, dword [rsp + 0x48]
mov rcx, qword [0x1800c65c0]
sub rcx, rax
mov rax, rcx
mov qword [0x1800c65c0], rax
movzx eax, word [0x1800c65e0]
mov ecx, 1
imul rcx, rcx, 0x81
lea rdx, [0x18060e100]
mov byte [rdx + rcx], al
mov eax, dword [rsp + 0x338]
mov ecx, dword [rsp + 0x33c]
or eax, ecx
add eax, 0xfffffdd5
mov dword [rsp + 0x37c], eax
mov rax, qword [rsp + 0x5d0]
mov qword [rsp + 0x98], rax
mov rax, qword [0x1800c6550]
cmp rax, qword [0x1800c6608]
jbe 0x180039e5b
mov dword [rsp + 0x1bc], 1
jmp 0x180039e66
mov dword [rsp + 0x1bc], 0
mov rax, qword [0x1800c6550]
cmp rax, 0x13
jbe 0x180039e80
mov dword [rsp + 0x1b8], 1
jmp 0x180039e8b
mov dword [rsp + 0x1b8], 0
mov eax, dword [rsp + 0x1b8]
cmp dword [rsp + 0x1bc], eax
jle 0x180039f3a
cmp dword [0x1800c6600], 0
je 0x180039ee2
movzx eax, byte [rsp + 0x2c]
movsx eax, al
sub eax, 0xea
movzx ecx, word [0x1800c64a4]
movsx ecx, cx
or ecx, eax
mov eax, ecx
mov word [0x1800c64a4], ax
mov rax, qword [rsp + 0x68]
movabs rcx, 0xcb98b6bd1453
add rax, rcx
mov dword [rsp + 0x48], eax
jmp 0x180039f3a
mov eax, dword [0x18051ec90]
mov dword [0x1800c65a0], eax
movzx eax, byte [str.ezaltsecid]
movzx eax, al
not eax
add eax, 0xd739721d
movzx ecx, byte [rsp + 0x20]
movzx edx, word [rsp + 0x40]
movsx edx, dx
add ecx, edx
imul eax, ecx
test eax, eax
jne 0x180039f22
mov dword [rsp + 0x1c0], 1
jmp 0x180039f2d
mov dword [rsp + 0x1c0], 0
mov eax, dword [rsp + 0x1c0]
mov dword [0x1800c65a0], eax
mov qword [rsp + 0x418], 0
mov qword [rsp + 0xb0], 0
cmp qword [0x1800c6598], 0
je 0x18003a005
mov eax, 1
mov word [rsp + 0x34], ax
movzx eax, word [rsp + 0x34]
movzx eax, ax
mov dword [rsp + 0x1c4], eax
cmp dword [rsp + 0x1c4], 0
je 0x180039f8f
cmp dword [rsp + 0x1c4], 1
je 0x180039fca
jmp 0x18003a005
mov eax, 8
imul rax, rax, 0xb
lea rcx, [0x180598560]
movzx edx, word [0x1800c6574]
movzx edx, dx
sub rdx, qword [rcx + rax]
mov rax, rdx
mov word [0x1800c6574], ax
mov rax, qword [0x1800c65f0]
dec rax
mov qword [0x1800c65f0], rax
jmp 0x18003a005
mov eax, dword [0x1800c6564]
mov rcx, qword [0x1800c65f0]
sub rcx, rax
mov rax, rcx
mov rcx, qword [0x1800c65f0]
sub rcx, rax
mov rax, rcx
mov qword [0x1800c65f0], rax
movzx eax, word [0x1800c6574]
movzx eax, ax
sub eax, 0xa410ce2b
mov word [rsp + 0x34], ax
mov qword [rsp + 0x2f8], 0
movabs rax, 0xe747f66dfdf7a
mov rcx, qword [0x1800c6580]
sub rcx, rax
mov rax, rcx
mov dword [0x1800c655c], eax
cmp dword [0x1800c6600], 0
je 0x18003a044
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x1c8], eax
jmp 0x18003a051
mov eax, dword [0x1800c6564]
mov dword [rsp + 0x1c8], eax
mov eax, dword [rsp + 0x1c8]
mov qword [0x1800c6568], rax
mov qword [rsp + 0x300], 0
movsx rax, word [0x1800c6524]
mov rcx, qword [0x1800c65e8]
cmp rax, rcx
jbe 0x18003a08c
mov dword [rsp + 0x1d0], 1
jmp 0x18003a097
mov dword [rsp + 0x1d0], 0
movsx eax, word [0x1800c6524]
cmp eax, 9
jle 0x18003a0b0
mov dword [rsp + 0x1cc], 1
jmp 0x18003a0bb
mov dword [rsp + 0x1cc], 0
mov eax, dword [rsp + 0x1cc]
mov dword [rsp + 0xa4], 0
movzx eax, word [0x1800c65fc]
movzx eax, ax
add eax, 0xd6
mov dword [0x1800c65a8], eax
mov qword [rsp + 0x420], 0
mov qword [rsp + 0x470], 0
mov qword [rsp + 0x140], 0
cmp qword [rsp + 0x5d0], 0
jne 0x18003a695
cmp dword [rsp + 0x48], 0
je 0x18003a337
mov dword [rsp + 0x50], 4
movzx eax, byte [rsp + 0x25]
movzx eax, al
movzx ecx, word [rsp + 0x30]
sub eax, ecx
cdqe
mov ecx, dword [0x1800c65bc]
mov ecx, ecx
mov rdx, qword [rsp + 0x70]
xor rdx, rcx
mov rcx, rdx
imul rax, rcx
movsx ecx, word [0x1800c6524]
movsx edx, word [rsp + 0x38]
movsx edi, byte [0x1800c64d2]
sub edx, edi
imul ecx, edx
movsxd rcx, ecx
imul rax, rcx
mov qword [0x1800c65e8], rax
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x7c], eax
cmp dword [rsp + 0x7c], 0
je 0x18003a1b6
cmp dword [rsp + 0x7c], 1
je 0x18003a214
cmp dword [rsp + 0x7c], 2
je 0x18003a24f
cmp dword [rsp + 0x7c], 3
je 0x18003a292
cmp dword [rsp + 0x7c], 4
je 0x18003a318
jmp 0x18003a335
mov eax, dword [0x1800c655c]
cdqe
movzx ecx, byte [rsp + 0x21]
movabs rdx, 0xfff024f529e50d42
add rcx, rdx
add rax, rcx
mov byte [rsp + 0x21], al
movsx eax, word [0x1800c6524]
test eax, eax
jne 0x18003a1ef
mov dword [rsp + 0x1d4], 1
jmp 0x18003a1fa
mov dword [rsp + 0x1d4], 0
movsx eax, word [0x1800c64c4]
add eax, dword [rsp + 0x1d4]
cdqe
mov qword [rsp + 0x68], rax
jmp 0x18003a335
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x18003a22e
movzx eax, word [0x1800c658c]
mov dword [rsp + 0x1d8], eax
jmp 0x18003a23d
movzx eax, word [0x1800c65e0]
cwde
mov dword [rsp + 0x1d8], eax
movzx eax, word [rsp + 0x1d8]
mov word [rsp + 0x3c], ax
jmp 0x18003a335
mov rax, qword [0x1800c6608]
add rax, 0x6ac5
mov ecx, dword [rsp + 0x50]
mov ecx, ecx
sub rcx, qword [0x1800c6580]
xor rax, rcx
mov dword [0x1800c6588], eax
mov eax, 1
imul rax, rax, 0xb411
lea rcx, [0x18059faa0]
movzx edx, byte [rsp + 0x54]
mov byte [rcx + rax], dl
jmp 0x18003a335
mov rax, qword [0x1800c6568]
movabs rcx, 0xb5a60ec1f12a9
sub rax, rcx
mov dword [0x1800c65b8], eax
cmp dword [rsp + 0x48], 0
jne 0x18003a2c1
mov qword [rsp + 0x460], 1
jmp 0x18003a2cd
mov qword [rsp + 0x460], 0
movsx eax, word [rsp + 0x44]
imul eax, eax, 0x44
cdqe
mov rcx, qword [rsp + 0x460]
imul rcx, qword [rsp + 0x60]
imul rax, rcx
movzx ecx, byte [0x1800c64d7]
movsx ecx, cl
movzx edx, byte [rsp + 0x25]
movzx edx, dl
add ecx, edx
mov edx, dword [0x1800c65a4]
mov edi, dword [rsp + 0x50]
add edx, edi
xor ecx, edx
not ecx
mov ecx, ecx
sub rax, rcx
mov dword [rsp + 0x48], eax
jmp 0x18003a335
movzx eax, word [0x1800c65fc]
movzx eax, ax
mov rcx, qword [0x1800c65d0]
lea rax, [rax + rcx - 0xb]
mov word [0x1800c65fc], ax
jmp 0x18003a377
mov rax, qword [rsp + 0x68]
mov ecx, dword [0x1800c65bc]
mov ecx, ecx
cmp rax, rcx
jge 0x18003a377
movzx eax, byte [0x1800c64d6]
movzx eax, al
and eax, 0x4845a70a
mov dword [0x1800c6588], eax
movsxd rax, dword [rsp + 0x58]
movabs rcx, 0xf1497544a432c
add rax, rcx
mov qword [0x1800c6568], rax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0xf4], eax
movsx eax, word [0x1800c6558]
test eax, eax
je 0x18003a3a2
movzx eax, word [0x1800c6574]
movzx eax, ax
mov dword [rsp + 0x1dc], eax
jmp 0x18003a3ae
movsx eax, byte [rsp + 0x22]
mov dword [rsp + 0x1dc], eax
movsxd rax, dword [rsp + 0x1dc]
mov qword [0x1800c6598], rax
mov eax, 1
imul rax, rax, 0x2f85
lea rcx, [0x18052d820]
movzx eax, byte [rcx + rax]
mov rcx, qword [0x1800c6568]
add rcx, rax
mov rax, rcx
mov qword [0x1800c6568], rax
mov eax, dword [rsp + 0xf4]
add eax, 0x4a6
mov dword [rsp + 0x1e8], eax
mov eax, dword [rsp + 0x340]
mov ecx, dword [rsp + 0xf4]
add eax, ecx
mov dword [rsp + 0x508], eax
movzx eax, byte [0x1800c64a7]
movzx ecx, word [rsp + 0x3c]
movsx ecx, cx
cmp eax, ecx
jge 0x18003a432
mov dword [rsp + 0x1e4], 1
jmp 0x18003a43d
mov dword [rsp + 0x1e4], 0
movzx eax, byte [0x1800c64a7]
cmp eax, 0x47
jge 0x18003a456
mov dword [rsp + 0x1e0], 1
jmp 0x18003a461
mov dword [rsp + 0x1e0], 0
mov eax, dword [rsp + 0x1e0]
cmp dword [rsp + 0x1e4], eax
je 0x18003a47f
mov eax, dword [0x18051ec90]
mov dword [0x1800c65e4], eax
jmp 0x18003a4c0
movzx eax, byte [rsp + 0x23]
movsx eax, al
add eax, dword [0x1800c65f8]
mov eax, eax
cmp qword [0x1800c6580], rax
jne 0x18003a4c0
movzx eax, byte [rsp + 0x20]
add eax, 0x4e78264d
cdqe
mov qword [0x1800c65d0], rax
movzx eax, word [rsp + 0x28]
movzx eax, ax
mov rcx, qword [rsp + 0x70]
sub rax, rcx
mov word [rsp + 0x28], ax
mov eax, dword [rsp + 0x344]
mov ecx, dword [rsp + 0xf4]
add eax, ecx
mov dword [rsp + 0x34c], eax
mov eax, dword [rsp + 0x348]
mov ecx, dword [rsp + 0x34c]
imul eax, ecx
mov ecx, dword [rsp + 0x1e8]
mov edx, dword [rsp + 0x1e8]
imul ecx, edx
cmp eax, ecx
je 0x18003a695
cmp dword [rsp + 0x48], 0
je 0x18003a5af
movzx eax, word [rsp + 0x40]
cwde
cmp eax, dword [0x1800c65a0]
jne 0x18003a528
mov qword [rsp + 0x468], 1
jmp 0x18003a534
mov qword [rsp + 0x468], 0
movzx eax, byte [rsp + 0x25]
movzx eax, al
mov rcx, qword [rsp + 0x70]
or rax, rcx
mov rcx, qword [rsp + 0x468]
sub rcx, rax
mov rax, rcx
test rax, rax
je 0x18003a568
movsx eax, word [rsp + 0x44]
and eax, 0x8c32b6eb
mov word [rsp + 0x30], ax
jmp 0x18003a5aa
movzx eax, word [rsp + 0x34]
movzx eax, ax
test eax, eax
je 0x18003a582
movsx eax, word [rsp + 0x38]
mov dword [rsp + 0x1ec], eax
jmp 0x18003a591
movzx eax, byte [rsp + 0x25]
movzx eax, al
mov dword [rsp + 0x1ec], eax
mov eax, dword [rsp + 0x1ec]
mov dword [0x1800c655c], eax
mov eax, dword [0x18051ec90]
mov dword [0x1800c65c8], eax
jmp 0x18003a657
mov rax, qword [rsp + 0x60]
not rax
test rax, rax
je 0x18003a5d6
movzx eax, word [rsp + 0x40]
cwde
movzx ecx, word [rsp + 0x34]
movzx ecx, cx
sub eax, ecx
mov word [rsp + 0x40], ax
jmp 0x18003a657
movzx eax, byte [rsp + 0x21]
movzx ecx, word [rsp + 0x30]
cmp eax, ecx
jg 0x18003a5f1
mov dword [rsp + 0x1f0], 1
jmp 0x18003a5fc
mov dword [rsp + 0x1f0], 0
movzx eax, word [rsp + 0x40]
cwde
cmp dword [rsp + 0x1f0], eax
jge 0x18003a657
movzx eax, word [rsp + 0x34]
movzx eax, ax
movzx ecx, word [rsp + 0x28]
movzx ecx, cx
movabs rdx, 0xfff3ac82f5d4f1a2
add rax, rdx
add rax, rcx
mov dword [0x1800c6570], eax
movzx eax, byte [0x1800c64c7]
movzx eax, al
movzx ecx, byte [rsp + 0x20]
imul eax, ecx
movzx ecx, byte [0x1800c64c7]
movzx ecx, cl
sub ecx, eax
mov eax, ecx
mov byte [0x1800c64c7], al
movsx eax, word [0x1800c6524]
test eax, eax
je 0x18003a671
mov eax, dword [0x1800c65e4]
mov dword [rsp + 0x1f4], eax
jmp 0x18003a680
movzx eax, byte [rsp + 0x2c]
movsx eax, al
mov dword [rsp + 0x1f4], eax
mov eax, dword [rsp + 0x1f4]
mov qword [0x1800c6590], rax
xor eax, eax
jmp 0x18003c95d
mov eax, 1
imul rax, rax, 0x1d38
lea rcx, [0x1805cda60]
movzx edx, byte [rsp + 0x58]
mov byte [rcx + rax], dl
mov rax, qword [rsp + 0x98]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x420], rax
cmp qword [0x1800c6598], 0
je 0x18003a7f3
mov eax, dword [rsp + 0x50]
test eax, eax
je 0x18003a7f3
mov eax, 2
mov word [rsp + 0x28], ax
mov rax, qword [rsp + 0x68]
movabs rcx, 0x29a6f61d54225
sub rax, rcx
mov dword [0x1800c65bc], eax
movzx eax, word [rsp + 0x28]
movzx eax, ax
mov dword [rsp + 0xf8], eax
cmp dword [rsp + 0xf8], 0
je 0x18003a740
cmp dword [rsp + 0xf8], 1
je 0x18003a774
cmp dword [rsp + 0xf8], 2
je 0x18003a7af
jmp 0x18003a7f3
movzx eax, byte [0x1800c64c7]
movzx eax, al
mov ecx, 8
imul rcx, rcx, 9
lea rdx, [0x1805e2580]
mov qword [rdx + rcx], rax
movzx eax, byte [rsp + 0x21]
mov ecx, dword [rsp + 0x4c]
lea eax, [rcx + rax + 0xf0]
mov dword [rsp + 0x4c], eax
jmp 0x18003a7f3
movzx eax, byte [0x1800c64a7]
add eax, dword [0x1800c65a0]
movzx ecx, byte [0x1800c64a7]
sub ecx, eax
mov eax, ecx
mov byte [0x1800c64a7], al
movsx eax, byte [rsp + 0x22]
movsx ecx, byte [0x1800c64d2]
add eax, ecx
movsx ecx, byte [rsp + 0x22]
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x22], al
jmp 0x18003a7f3
movzx eax, byte [rsp + 0x20]
and eax, 0x857c
not eax
movsx ecx, word [0x1800c65cc]
not ecx
imul eax, ecx
cdqe
mov ecx, dword [0x1800c6570]
mov edx, dword [0x1800c65bc]
mov edx, edx
movabs rdi, 0x142db4f9bc493
imul rdx, rdi
imul rcx, rdx
sub rax, rcx
mov qword [0x1800c6608], rax
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rsp + 0x420]
lea rax, [rcx + rax + 0x88]
mov qword [rsp + 0x470], rax
movzx eax, byte [rsp + 0x21]
movzx ecx, word [rsp + 0x34]
movzx ecx, cx
xor eax, ecx
mov byte [rsp + 0x21], al
mov rax, qword [rsp + 0x470]
mov eax, dword [rax]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x140], rax
mov byte [rsp + 0x24], 4
movsx eax, word [0x1800c6560]
not eax
movzx ecx, byte [0x1800c64a6]
movzx ecx, cl
imul eax, ecx
test eax, eax
jne 0x18003a874
mov qword [rsp + 0x478], 1
jmp 0x18003a880
mov qword [rsp + 0x478], 0
movzx eax, byte [rsp + 0x21]
mov rcx, qword [rsp + 0x70]
add rax, rcx
mov rcx, qword [rsp + 0x478]
imul rcx, rax
mov rax, rcx
mov ecx, dword [rsp + 0x50]
mov edx, dword [0x1800c65a0]
add edx, ecx
mov ecx, edx
movsx edx, word [0x1800c64c4]
mov edi, dword [0x1800c65bc]
sub edx, edi
imul ecx, edx
mov ecx, ecx
add rax, rcx
test rax, rax
jne 0x18003a8d5
mov eax, 1
mov word [rsp + 0x8c], ax
jmp 0x18003a8df
xor eax, eax
mov word [rsp + 0x8c], ax
movzx eax, word [rsp + 0x8c]
mov word [rsp + 0x28], ax
movzx eax, byte [rsp + 0x24]
mov byte [rsp + 0x80], al
cmp byte [rsp + 0x80], 0
je 0x18003a92f
cmp byte [rsp + 0x80], 1
je 0x18003a942
cmp byte [rsp + 0x80], 2
je 0x18003a958
cmp byte [rsp + 0x80], 3
je 0x18003a971
cmp byte [rsp + 0x80], 4
je 0x18003a99d
jmp 0x18003a9eb
movzx eax, byte [rsp + 0x23]
movsx ax, al
mov word [rsp + 0x38], ax
jmp 0x18003a9eb
mov rax, qword [0x1800c6578]
inc rax
mov qword [0x1800c6578], rax
jmp 0x18003a9eb
mov eax, dword [0x1800c65e4]
mov ecx, dword [0x1800c6570]
imul ecx, eax
mov eax, ecx
mov dword [0x1800c6570], eax
jmp 0x18003a9eb
movzx eax, byte [rsp + 0x23]
movsx rax, al
mov rcx, qword [0x1800c6568]
xor rcx, rax
mov rax, rcx
mov rcx, qword [0x1800c6568]
add rcx, rax
mov rax, rcx
mov qword [0x1800c6568], rax
jmp 0x18003a9eb
movsx rax, word [0x1800c6560]
mov rcx, qword [0x1800c6568]
add rax, rcx
mov word [0x1800c6560], ax
mov rax, qword [0x1800c6568]
test rax, rax
jne 0x18003a9d0
mov qword [rsp + 0x480], 1
jmp 0x18003a9dc
mov qword [rsp + 0x480], 0
mov rax, qword [rsp + 0x480]
mov qword [0x1800c6580], rax
mov rax, qword [rsp + 0x140]
mov eax, dword [rax + 0x1c]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xb0], rax
movzx eax, byte [0x1800c64d1]
movzx eax, al
movzx ecx, byte [rsp + 0x24]
movzx ecx, cl
cmp eax, ecx
jle 0x18003aa52
movzx eax, byte [rsp + 0x24]
movzx eax, al
movsx ecx, byte [rsp + 0x22]
sub eax, ecx
mov dword [rsp + 0x54], eax
movzx eax, byte [rsp + 0x25]
movzx eax, al
mov rcx, qword [0x1800c65b0]
imul rcx, rax
mov rax, rcx
mov qword [0x1800c65b0], rax
mov rax, qword [rsp + 0x140]
mov eax, dword [rax + 0x20]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x2f8], rax
movzx eax, byte [rsp + 0x20]
and eax, 0x6e84
mov ecx, dword [0x1800c65c8]
sub ecx, eax
mov eax, ecx
mov dword [0x1800c65c8], eax
mov rax, qword [rsp + 0x140]
mov eax, dword [rax + 0x24]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x300], rax
mov eax, 0xffff0000
mov rcx, qword [rsp + 0x5d8]
and rcx, rax
mov rax, rcx
test rax, rax
jne 0x18003af5c
mov eax, dword [0x18051ec90]
mov dword [rsp + 0xfc], eax
mov rax, qword [0x1800c6568]
test rax, rax
je 0x18003aaf7
cmp dword [rsp + 0x4c], 0
je 0x18003aaf7
mov dword [rsp + 0x1fc], 1
jmp 0x18003ab02
mov dword [rsp + 0x1fc], 0
movzx eax, byte [rsp + 0x23]
movsx eax, al
test eax, eax
jne 0x18003ab1b
mov dword [rsp + 0x1f8], 1
jmp 0x18003ab26
mov dword [rsp + 0x1f8], 0
cmp dword [rsp + 0x1f8], 0
jne 0x18003ab3d
mov dword [rsp + 0x200], 1
jmp 0x18003ab48
mov dword [rsp + 0x200], 0
mov eax, dword [rsp + 0x1fc]
imul eax, dword [rsp + 0x200]
test eax, eax
je 0x18003ac44
movzx eax, byte [0x1800c64d7]
movsx eax, al
test eax, eax
jg 0x18003ab7a
mov dword [rsp + 0x204], 1
jmp 0x18003ab85
mov dword [rsp + 0x204], 0
movzx eax, byte [rsp + 0x21]
cmp eax, dword [rsp + 0x204]
je 0x18003aba0
mov dword [rsp + 0x20c], 1
jmp 0x18003abab
mov dword [rsp + 0x20c], 0
movzx eax, byte [rsp + 0x20]
movzx ecx, word [0x1800c658c]
cmp eax, ecx
jl 0x18003abd4
movzx eax, word [rsp + 0x28]
movzx eax, ax
test eax, eax
jne 0x18003abd4
mov dword [rsp + 0x208], 0
jmp 0x18003abdf
mov dword [rsp + 0x208], 1
mov eax, dword [rsp + 0x208]
cmp dword [rsp + 0x20c], eax
je 0x18003ac23
movzx eax, byte [0x1800c64a6]
movzx eax, al
movzx ecx, word [rsp + 0x34]
movzx ecx, cx
sub eax, ecx
movzx ecx, byte [0x1800c64a6]
movzx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [0x1800c64a6], al
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x58], eax
jmp 0x18003ac42
movzx eax, word [rsp + 0x28]
movzx eax, ax
not eax
test eax, eax
je 0x18003ac42
movzx eax, word [0x1800c6558]
inc ax
mov word [0x1800c6558], ax
jmp 0x18003acac
movsx eax, word [rsp + 0x44]
movsx ecx, word [rsp + 0x38]
movzx edx, byte [rsp + 0x21]
xor edx, 0x80cd
sub ecx, edx
lea eax, [rax + rcx + 0x32]
cdqe
mov qword [0x1800c65c0], rax
mov rax, qword [0x1800c6550]
test rax, rax
jne 0x18003ac81
mov dword [rsp + 0x210], 1
jmp 0x18003ac8c
mov dword [rsp + 0x210], 0
mov eax, dword [rsp + 0x210]
mov ecx, dword [0x1800c65a8]
add ecx, eax
mov eax, ecx
movsx ecx, byte [0x1800c64d2]
sub eax, ecx
mov byte [0x1800c64d7], al
mov eax, dword [rsp + 0x350]
mov ecx, dword [rsp + 0xfc]
add eax, ecx
mov dword [rsp + 0x364], eax
mov rax, qword [0x1800c6568]
mov rcx, qword [rsp + 0x70]
add rax, rcx
mov word [rsp + 0x3c], ax
mov rax, qword [rsp + 0x60]
not rax
movsx rcx, word [0x1800c6560]
add rax, rcx
movsxd rcx, dword [rsp + 0x48]
sub rax, rcx
mov ecx, dword [0x1800c65f8]
mov rdx, qword [0x1800c65c0]
sub rdx, rcx
mov rcx, rdx
movzx edx, byte [0x1800c64a6]
movzx edx, dl
not edx
movsxd rdx, edx
add rcx, qword [rsp + 0x60]
add rdx, rcx
mov rcx, rdx
xor rax, rcx
mov dword [0x1800c65bc], eax
mov eax, dword [rsp + 0x354]
mov ecx, dword [rsp + 0xfc]
add eax, ecx
mov dword [rsp + 0x50c], eax
mov eax, dword [0x18051ec90]
mov dword [0x1800c65ac], eax
mov rax, qword [0x1800c6550]
mov rcx, qword [rsp + 0x60]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
mov eax, dword [rsp + 0x358]
mov ecx, dword [rsp + 0xfc]
add eax, ecx
mov dword [rsp + 0x35c], eax
mov eax, dword [rsp + 0x35c]
mov ecx, dword [rsp + 0x360]
mov edx, dword [rsp + 0x364]
imul ecx, edx
cmp eax, ecx
je 0x18003af57
movzx eax, word [rsp + 0x30]
not eax
cdqe
movabs rcx, 0xfff658bf0b3190a2
imul rax, rcx
movzx ecx, word [rsp + 0x40]
movsx ecx, cx
mov edx, dword [0x1800c655c]
add ecx, edx
movsxd rcx, ecx
sub rax, rcx
mov dword [rsp + 0x48], eax
movzx eax, byte [0x1800c64a7]
test eax, eax
je 0x18003ade6
movzx eax, byte [rsp + 0x24]
movzx eax, al
mov dword [rsp + 0x214], eax
jmp 0x18003adf2
movsx eax, word [rsp + 0x44]
mov dword [rsp + 0x214], eax
movzx eax, word [rsp + 0x214]
mov word [0x1800c64a4], ax
movzx eax, word [0x1800c64d4]
test eax, eax
jne 0x18003ae21
mov eax, dword [rsp + 0x50]
test eax, eax
je 0x18003ae21
mov dword [rsp + 0x220], 1
jmp 0x18003ae2c
mov dword [rsp + 0x220], 0
mov eax, dword [rsp + 0x50]
cmp eax, 0x70
je 0x18003ae42
mov dword [rsp + 0x218], 1
jmp 0x18003ae4d
mov dword [rsp + 0x218], 0
mov eax, dword [0x1800c65a4]
mov ecx, dword [rsp + 0x50]
cmp eax, ecx
jb 0x18003ae68
mov dword [rsp + 0x21c], 1
jmp 0x18003ae73
mov dword [rsp + 0x21c], 0
mov eax, dword [rsp + 0x218]
imul eax, dword [rsp + 0x21c]
cmp dword [rsp + 0x220], eax
je 0x18003aee3
movzx eax, byte [rsp + 0x20]
movzx ecx, byte [0x1800c64d7]
movsx ecx, cl
xor eax, ecx
movzx ecx, byte [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x20], al
cmp qword [0x1800c6580], 0
jne 0x18003aec0
mov dword [rsp + 0x224], 1
jmp 0x18003aecb
mov dword [rsp + 0x224], 0
mov eax, dword [rsp + 0x224]
mov ecx, dword [rsp + 0x4c]
xor ecx, eax
mov eax, ecx
mov word [0x1800c64a4], ax
jmp 0x18003af07
mov rax, qword [0x1800c6580]
add rax, 0x541b6c06
movzx ecx, word [0x1800c65fc]
movzx ecx, cx
sub rcx, rax
mov rax, rcx
mov word [0x1800c65fc], ax
mov rax, qword [rsp + 0x5d8]
and rax, 0xffff
mov rcx, qword [rsp + 0x140]
mov ecx, dword [rcx + 0x10]
sub rax, rcx
mov rcx, qword [rsp + 0xb0]
lea rax, [rcx + rax*4]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0xb0]
mov eax, dword [rax]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x418], rax
jmp 0x18003c955
mov rax, qword [0x1800c65c0]
cmp rax, qword [0x1800c6580]
jae 0x18003b059
movzx eax, word [0x1800c64a4]
cwde
test eax, eax
je 0x18003afb0
mov eax, dword [0x1800c655c]
mov ecx, dword [rsp + 0x54]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x54]
xor ecx, eax
mov eax, ecx
mov dword [rsp + 0x54], eax
movzx eax, word [rsp + 0x34]
movzx eax, ax
imul eax, eax, 0x9f554e38
mov eax, eax
mov qword [rsp + 0x60], rax
jmp 0x18003b054
mov eax, dword [0x1800c65bc]
test eax, eax
je 0x18003afdd
movsxd rax, dword [rsp + 0x48]
movabs rcx, 0x45fc2ebc6eb0f
imul rax, rcx
mov byte [rsp + 0x24], al
movzx eax, word [rsp + 0x44]
mov word [rsp + 0x28], ax
jmp 0x18003b054
mov eax, dword [0x1800c65e4]
test eax, eax
je 0x18003b054
movzx eax, byte [0x1800c64d6]
movzx eax, al
mov rcx, qword [0x1800c6590]
imul rax, rcx
movzx ecx, byte [0x1800c64a7]
not ecx
movsxd rcx, ecx
sub rax, rcx
movzx ecx, byte [rsp + 0x21]
movzx edx, byte [rsp + 0x25]
movzx edx, dl
imul ecx, edx
mov edx, dword [rsp + 0x48]
not edx
add ecx, edx
movsxd rcx, ecx
and rax, rcx
test rax, rax
jne 0x18003b03d
mov eax, 1
mov word [rsp + 0x8e], ax
jmp 0x18003b047
xor eax, eax
mov word [rsp + 0x8e], ax
movzx eax, word [rsp + 0x8e]
mov word [rsp + 0x38], ax
jmp 0x18003b0fc
movzx eax, byte [0x1800c64d3]
mov rcx, qword [rsp + 0x68]
cmp rax, rcx
jne 0x18003b077
mov dword [rsp + 0x22c], 1
jmp 0x18003b082
mov dword [rsp + 0x22c], 0
mov rax, qword [0x1800c65e8]
movzx ecx, word [0x1800c64d4]
cmp rax, rcx
je 0x18003b0a2
mov dword [rsp + 0x228], 1
jmp 0x18003b0ad
mov dword [rsp + 0x228], 0
mov eax, dword [rsp + 0x228]
cmp dword [rsp + 0x22c], eax
jg 0x18003b0fc
mov eax, dword [rsp + 0x4c]
movabs rcx, 0xfb086b7dd760e
add rax, rcx
mov qword [rsp + 0x68], rax
mov eax, dword [0x1800c65a4]
mov eax, eax
movabs rcx, 0xc3cfbaf863842
add rax, rcx
movzx ecx, word [rsp + 0x40]
movsx rcx, cx
sub rcx, rax
mov rax, rcx
mov word [rsp + 0x40], ax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x100], eax
mov eax, dword [0x1800c65e4]
test eax, eax
je 0x18003b146
mov eax, dword [0x1800c65b8]
sub eax, 0xe225
cdqe
mov qword [rsp + 0x60], rax
mov eax, dword [0x1800c65f8]
sub rax, qword [0x1800c65f0]
mov ecx, dword [0x1800c65f8]
sub rcx, rax
mov rax, rcx
mov dword [0x1800c65f8], eax
jmp 0x18003b1b6
movzx eax, byte [rsp + 0x24]
movzx eax, al
test eax, eax
jne 0x18003b15f
mov dword [rsp + 0x230], 1
jmp 0x18003b16a
mov dword [rsp + 0x230], 0
movsx eax, word [rsp + 0x44]
not eax
sub eax, dword [rsp + 0x230]
test eax, eax
jne 0x18003b188
mov eax, 1
mov word [rsp + 0x78], ax
jmp 0x18003b18f
xor eax, eax
mov word [rsp + 0x78], ax
movzx eax, word [rsp + 0x78]
mov word [rsp + 0x28], ax
movsx eax, word [0x1800c6524]
add eax, 0x63e3d226
movzx ecx, word [rsp + 0x40]
movsx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x40], ax
mov eax, dword [rsp + 0x368]
mov ecx, dword [rsp + 0x100]
add eax, ecx
mov dword [rsp + 0x374], eax
mov eax, dword [rsp + 0x36c]
mov ecx, dword [rsp + 0x100]
add eax, ecx
mov dword [rsp + 0x378], eax
mov eax, dword [rsp + 0x370]
mov ecx, dword [rsp + 0x100]
add eax, ecx
mov dword [rsp + 0x234], eax
mov eax, dword [rsp + 0x234]
mov ecx, dword [rsp + 0x374]
add eax, ecx
mov ecx, dword [rsp + 0x378]
mov edx, dword [rsp + 0x37c]
imul ecx, edx
mov edx, dword [rsp + 0x234]
sub edx, ecx
mov ecx, edx
cmp eax, ecx
je 0x18003c955
movzx eax, byte [0x1800c64a6]
movzx eax, al
mov ecx, dword [0x1800c65b8]
cmp eax, ecx
jg 0x18003b250
mov dword [rsp + 0x23c], 1
jmp 0x18003b25b
mov dword [rsp + 0x23c], 0
movzx eax, byte [0x1800c64a6]
movzx eax, al
cmp eax, 0x28
jg 0x18003b277
mov dword [rsp + 0x238], 1
jmp 0x18003b282
mov dword [rsp + 0x238], 0
mov eax, dword [rsp + 0x238]
cmp dword [rsp + 0x23c], eax
je 0x18003b2ef
movzx eax, word [rsp + 0x3c]
cwde
movzx ecx, byte [rsp + 0x23]
movsx ecx, cl
cmp eax, ecx
je 0x18003b2b5
mov eax, dword [0x1800c65bc]
shl eax, 8
mov dword [0x1800c65a0], eax
jmp 0x18003b2ef
mov rax, qword [rsp + 0x60]
and rax, 0x78c7
mov qword [0x1800c65d8], rax
movsx eax, word [rsp + 0x38]
test eax, eax
jne 0x18003b2dc
mov eax, 1
mov word [rsp + 0x7a], ax
jmp 0x18003b2e3
xor eax, eax
mov word [rsp + 0x7a], ax
movzx eax, word [rsp + 0x7a]
mov word [0x1800c64a4], ax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x104], eax
mov eax, dword [rsp + 0x104]
add eax, 0x386
mov dword [rsp + 0x3b8], eax
movsx rax, byte [0x1800c64d2]
mov rcx, qword [rsp + 0x68]
and rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x68]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
mov eax, dword [rsp + 0x104]
add eax, 0x2bc
mov dword [rsp + 0x510], eax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x50], eax
imul eax, dword [rsp + 0x48], 0x541d52f8
cdqe
mov rcx, qword [0x1800c6550]
sub rcx, rax
mov rax, rcx
mov qword [0x1800c6550], rax
mov eax, dword [rsp + 0x104]
add eax, 0x245
mov dword [rsp + 0x290], eax
xor eax, eax
mov word [0x1800c6560], ax
mov eax, dword [rsp + 0x50]
sub eax, 0x571e
mov word [rsp + 0x30], ax
movsx eax, word [0x1800c6560]
mov dword [rsp + 0x380], eax
cmp dword [rsp + 0x380], 0
je 0x18003b3b1
jmp 0x18003b3be
movzx eax, byte [0x18051ec90]
mov byte [str.ezaltsecid], al
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x108], eax
mov eax, dword [rsp + 0x108]
add eax, 0x2d4
mov dword [rsp + 0x388], eax
mov eax, dword [rsp + 0x108]
add eax, 0xb419
mov dword [rsp + 0x384], eax
mov eax, dword [rsp + 0x108]
add eax, 0x4cc7
mov dword [rsp + 0x518], eax
movzx eax, byte [rsp + 0x2c]
movsx eax, al
cmp eax, dword [rsp + 0x58]
jge 0x18003b43b
movzx eax, word [0x1800c64a4]
cwde
sub eax, 0xb7
mov dword [0x1800c6588], eax
movzx eax, byte [rsp + 0x2c]
movsx eax, al
add eax, 0xcb
mov byte [rsp + 0x2c], al
jmp 0x18003b4d4
movzx eax, word [rsp + 0x34]
movzx eax, ax
test eax, eax
jne 0x18003b45b
cmp dword [rsp + 0x58], 0
je 0x18003b45b
mov dword [rsp + 0x244], 1
jmp 0x18003b466
mov dword [rsp + 0x244], 0
movsx eax, byte [0x1800c64d2]
not eax
cmp dword [rsp + 0x48], eax
jne 0x18003b482
mov dword [rsp + 0x240], 1
jmp 0x18003b48d
mov dword [rsp + 0x240], 0
mov eax, dword [rsp + 0x240]
cmp dword [rsp + 0x244], eax
je 0x18003b4aa
mov dword [rsp + 0x248], 1
jmp 0x18003b4b5
mov dword [rsp + 0x248], 0
mov eax, dword [rsp + 0x248]
not eax
test eax, eax
je 0x18003b4d4
movsx eax, word [rsp + 0x38]
mov ecx, dword [0x1800c65ac]
add eax, ecx
mov word [rsp + 0x38], ax
movzx eax, byte [0x1800c64d3]
movzx ecx, word [rsp + 0x3c]
movsx ecx, cx
cmp eax, ecx
jl 0x18003b4e9
jmp 0x18003b528
movzx eax, word [rsp + 0x40]
cwde
movzx ecx, word [0x1800c65e0]
movsx ecx, cx
imul eax, ecx
mov ecx, dword [0x1800c65a4]
and eax, ecx
test eax, eax
je 0x18003b528
mov eax, dword [0x1800c6588]
add eax, 0x427153ad
mov word [rsp + 0x28], ax
mov eax, dword [0x1800c65b8]
sub eax, 0xf579
mov word [rsp + 0x30], ax
mov eax, dword [rsp + 0x384]
mov ecx, dword [rsp + 0x388]
imul eax, ecx
xor eax, 0x1fd525a
mov dword [rsp + 0x3bc], eax
movzx eax, word [rsp + 0x30]
mov qword [0x1800c6598], rax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x10c], eax
mov eax, dword [rsp + 0x10c]
add eax, 0xebb9
mov dword [rsp + 0x38c], eax
mov eax, dword [rsp + 0x10c]
add eax, 0x8180
mov dword [rsp + 0x51c], eax
mov eax, dword [rsp + 0x10c]
add eax, 0x73c2
mov dword [rsp + 0x390], eax
mov eax, dword [rsp + 0x38c]
add eax, 0x28ed
mov ecx, dword [rsp + 0x390]
imul ecx, ecx, 0xeb
or eax, ecx
xor eax, 0x6b5531
mov dword [rsp + 0x3c0], eax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x110], eax
mov eax, dword [rsp + 0x110]
add eax, 0x9dcf
mov dword [rsp + 0x394], eax
mov eax, dword [rsp + 0x110]
add eax, 0x5255
mov dword [rsp + 0x39c], eax
mov eax, dword [rsp + 0x110]
add eax, 0x24d
mov dword [rsp + 0x398], eax
mov eax, 4
imul rax, rax, 0xa5
lea rcx, [0x1805ab790]
mov eax, dword [rcx + rax]
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
movzx eax, word [0x1800c64a4]
cwde
mov ecx, dword [rsp + 0x54]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x394]
mov ecx, 0xe1b1
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x398]
mov edx, dword [rsp + 0x39c]
add ecx, edx
imul eax, ecx
mov ecx, 0x16711fb2
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x3c4], eax
mov rax, qword [rsp + 0x140]
mov eax, dword [rax + 0x18]
mov dword [rsp + 0xa4], eax
movsx eax, word [0x1800c6558]
sub eax, 0x1bde9c53
mov byte [rsp + 0x24], al
movzx eax, word [rsp + 0x30]
sub eax, 0x18c54355
cdqe
mov qword [0x1800c6568], rax
mov eax, dword [rsp + 0xa4]
mov dword [rsp + 0x3a0], eax
mov eax, dword [rsp + 0xa4]
dec eax
mov dword [rsp + 0xa4], eax
cmp dword [rsp + 0x3a0], 0
je 0x18003c955
movzx eax, word [rsp + 0x40]
cwde
test eax, eax
jne 0x18003b6ea
mov qword [rsp + 0x488], 1
jmp 0x18003b6f6
mov qword [rsp + 0x488], 0
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x488]
or rcx, rax
mov rax, rcx
mov byte [rsp + 0x20], al
movzx eax, word [0x1800c6574]
movzx eax, ax
movsx ecx, word [rsp + 0x44]
movzx edx, word [rsp + 0x30]
sub ecx, edx
add eax, ecx
not eax
cdqe
mov ecx, dword [rsp + 0x54]
mov edx, dword [rsp + 0x48]
sub edx, ecx
mov ecx, edx
movsxd rcx, ecx
mov rdx, qword [0x1800c65c0]
and rdx, 0xe
and rcx, rdx
add rax, rcx
test rax, rax
jne 0x18003b75b
mov dword [rsp + 0x24c], 1
jmp 0x18003b766
mov dword [rsp + 0x24c], 0
mov eax, dword [rsp + 0x24c]
mov dword [rsp + 0x4c], eax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x114], eax
mov dword [rsp + 0x50], 0x4a07
mov eax, dword [rsp + 0x114]
add eax, 0x2b8
mov dword [rsp + 0x25c], eax
mov eax, dword [rsp + 0x114]
add eax, 0x25f
mov dword [rsp + 0x258], eax
movzx eax, byte [rsp + 0x24]
movzx eax, al
movzx ecx, byte [rsp + 0x20]
cmp eax, ecx
jle 0x18003b7ca
mov dword [rsp + 0x254], 1
jmp 0x18003b7d5
mov dword [rsp + 0x254], 0
movzx eax, byte [rsp + 0x24]
movzx eax, al
cmp eax, 0x52
jle 0x18003b7ef
mov dword [rsp + 0x250], 1
jmp 0x18003b7fa
mov dword [rsp + 0x250], 0
mov eax, dword [rsp + 0x250]
mov eax, dword [rsp + 0x114]
add eax, 0x2bc
mov dword [rsp + 0x520], eax
mov eax, dword [0x1800c65c8]
test eax, eax
je 0x18003b820
jmp 0x18003b83a
movzx eax, word [0x1800c6604]
movzx eax, ax
mov ecx, dword [rsp + 0x50]
cmp eax, ecx
jae 0x18003b83a
mov dword [rsp + 0x58], 0x8c
mov eax, dword [rsp + 0x258]
mov ecx, dword [rsp + 0x25c]
add eax, ecx
mov ecx, dword [rsp + 0x258]
mov edx, dword [rsp + 0x25c]
add ecx, edx
imul eax, ecx
xor eax, 0x19eaa6
mov dword [rsp + 0x3d0], eax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x118], eax
mov eax, dword [rsp + 0x48]
and eax, 0xf2
mov byte [0x1800c64d6], al
cmp dword [0x1800c65f8], 0
je 0x18003b89f
movzx eax, byte [rsp + 0x23]
movsx eax, al
mov dword [rsp + 0x260], eax
jmp 0x18003b8ac
mov eax, dword [0x1800c6564]
mov dword [rsp + 0x260], eax
movzx eax, byte [rsp + 0x260]
mov byte [0x1800c64c7], al
mov eax, dword [rsp + 0x118]
add eax, 0x1f6
mov dword [rsp + 0x274], eax
mov eax, dword [0x1800c65c8]
cmp dword [rsp + 0x4c], eax
ja 0x18003b8e6
mov dword [rsp + 0x268], 1
jmp 0x18003b8f1
mov dword [rsp + 0x268], 0
cmp dword [rsp + 0x4c], 0x31
ja 0x18003b905
mov dword [rsp + 0x264], 1
jmp 0x18003b910
mov dword [rsp + 0x264], 0
mov eax, dword [rsp + 0x264]
cmp dword [rsp + 0x268], eax
jge 0x18003b92a
mov eax, 0x2d56
mov word [rsp + 0x38], ax
mov eax, dword [rsp + 0x118]
add eax, 0x5d01
mov dword [rsp + 0x3a4], eax
mov eax, dword [rsp + 0x118]
add eax, 0xb308
mov dword [rsp + 0x3a8], eax
movzx eax, word [0x1800c65e0]
mov ecx, 2
imul rcx, rcx, 0xb
lea rdx, [0x180538898]
mov word [rdx + rcx], ax
cmp dword [rsp + 0x58], 0
jne 0x18003b980
mov qword [rsp + 0x490], 1
jmp 0x18003b98c
mov qword [rsp + 0x490], 0
movzx eax, word [rsp + 0x28]
movzx eax, ax
imul eax, dword [rsp + 0x4c]
mov eax, eax
movabs rcx, 0x7bd1c30b34aa4
mov rdx, qword [rsp + 0x490]
add rcx, rdx
add rax, rcx
test rax, rax
jne 0x18003b9c5
mov dword [rsp + 0x270], 1
jmp 0x18003b9d0
mov dword [rsp + 0x270], 0
movzx eax, word [rsp + 0x30]
mov ecx, dword [0x1800c65b8]
lea eax, [rax + rcx - 0x67]
test eax, eax
jne 0x18003b9f0
mov dword [rsp + 0x26c], 1
jmp 0x18003b9fb
mov dword [rsp + 0x26c], 0
mov eax, dword [rsp + 0x26c]
mov ecx, dword [rsp + 0x270]
add ecx, eax
mov eax, ecx
cdqe
mov qword [rsp + 0x60], rax
mov eax, dword [rsp + 0x274]
mov ecx, dword [rsp + 0x3a4]
imul eax, ecx
mov ecx, dword [rsp + 0x3a8]
mov edx, dword [rsp + 0x274]
xor ecx, edx
xor eax, ecx
add eax, 0xff4917f7
mov dword [rsp + 0x3d4], eax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x11c], eax
mov eax, dword [rsp + 0x11c]
add eax, 0x29f
mov dword [rsp + 0x3b0], eax
mov qword [rsp + 0x68], 1
movzx eax, word [rsp + 0x28]
movzx eax, ax
movabs rcx, 0xa5e54de950eb5
add rax, rcx
mov word [rsp + 0x34], ax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x498], rax
cmp qword [rsp + 0x498], 0
je 0x18003baab
cmp qword [rsp + 0x498], 1
je 0x18003bab2
jmp 0x18003bad3
mov byte [rsp + 0x2c], 0xb5
jmp 0x18003bad3
mov eax, dword [0x1800c65f8]
movabs rcx, 0xc29061cdf2954
add rax, rcx
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x11c]
add eax, 0x2bc
mov dword [rsp + 0x524], eax
mov dword [rsp + 0x48], 0
movzx eax, word [rsp + 0x40]
cwde
mov ecx, dword [0x1800c65bc]
add ecx, eax
mov eax, ecx
mov dword [0x1800c65bc], eax
mov dword [0x1800c65a0], 0xd4
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x3ac], eax
cmp dword [rsp + 0x3ac], 0
je 0x18003bb25
jmp 0x18003bb5a
movzx eax, word [0x1800c6574]
movzx eax, ax
mov rcx, qword [0x1800c6550]
imul rax, rcx
mov word [0x1800c6574], ax
mov rax, qword [0x1800c65c0]
movabs rcx, 0x11abf92bb63f3
sub rax, rcx
mov qword [rsp + 0x60], rax
mov eax, dword [rsp + 0x11c]
add eax, 0xea0e
mov dword [rsp + 0x528], eax
movzx eax, byte [0x1800c64d1]
movzx eax, al
test eax, eax
jne 0x18003bb86
cmp dword [rsp + 0x48], 0
je 0x18003bc08
movzx eax, word [rsp + 0x34]
movzx eax, ax
cmp qword [0x1800c6580], rax
jne 0x18003bba4
mov dword [rsp + 0x27c], 1
jmp 0x18003bbaf
mov dword [rsp + 0x27c], 0
cmp qword [0x1800c6580], 0x52
jne 0x18003bbc6
mov dword [rsp + 0x278], 1
jmp 0x18003bbd1
mov dword [rsp + 0x278], 0
mov eax, dword [rsp + 0x278]
cmp dword [rsp + 0x27c], eax
jne 0x18003bc03
movzx eax, byte [rsp + 0x20]
shl eax, 8
mov byte [rsp + 0x21], al
movzx eax, byte [0x1800c64a6]
movzx eax, al
mov ecx, dword [rsp + 0x4c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x4c], eax
jmp 0x18003bc94
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x18003bc21
movsx ax, byte [rsp + 0x22]
mov word [0x1800c64a4], ax
jmp 0x18003bc94
mov eax, dword [0x1800c65bc]
sub eax, dword [0x1800c6588]
not eax
test eax, eax
je 0x18003bc4c
mov rax, qword [0x1800c6550]
test rax, rax
je 0x18003bc4c
mov dword [rsp + 0x280], 1
jmp 0x18003bc57
mov dword [rsp + 0x280], 0
mov eax, dword [rsp + 0x280]
not eax
test eax, eax
je 0x18003bc94
movzx eax, byte [rsp + 0x24]
movzx eax, al
imul eax, eax, 0xe7
mov dword [rsp + 0x4c], eax
movsx eax, byte [rsp + 0x22]
movzx ecx, byte [0x1800c64d7]
movsx ecx, cl
add eax, ecx
movsx ecx, byte [rsp + 0x22]
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x22], al
mov eax, dword [rsp + 0x3b0]
add eax, 0x254
mov dword [rsp + 0x3d8], eax
movzx eax, word [rsp + 0x28]
movzx eax, ax
cmp qword [0x1800c6608], rax
je 0x18003bcc5
mov dword [rsp + 0x288], 1
jmp 0x18003bcd0
mov dword [rsp + 0x288], 0
cmp qword [0x1800c6608], 0x64
je 0x18003bce7
mov dword [rsp + 0x284], 1
jmp 0x18003bcf2
mov dword [rsp + 0x284], 0
mov eax, dword [rsp + 0x284]
cmp dword [rsp + 0x288], eax
je 0x18003bd48
movzx eax, byte [rsp + 0x21]
cmp eax, dword [0x1800c6564]
jbe 0x18003bd46
movzx eax, word [0x1800c65fc]
movzx eax, ax
mov ecx, dword [0x1800c65a4]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x1800c65a4]
sub ecx, eax
mov eax, ecx
mov dword [0x1800c65a4], eax
movzx eax, word [rsp + 0x34]
movzx eax, ax
add eax, dword [0x1800c6570]
mov word [rsp + 0x34], ax
jmp 0x18003bd81
movzx eax, byte [rsp + 0x23]
movsx eax, al
movzx ecx, word [rsp + 0x3c]
movsx ecx, cx
cmp eax, ecx
jg 0x18003bd81
mov rax, qword [0x1800c65b0]
movabs rcx, 0x589971b3cee31
imul rax, rcx
mov byte [0x1800c64a7], al
mov eax, 0xb1
mov word [rsp + 0x30], ax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x120], eax
mov eax, dword [rsp + 0x120]
add eax, 0x7f78
mov dword [rsp + 0x52c], eax
movsx rax, byte [rsp + 0x22]
sub rax, qword [0x1800c6580]
mov byte [rsp + 0x22], al
mov eax, dword [rsp + 0x120]
add eax, 0x4a75
mov dword [rsp + 0x28c], eax
mov eax, dword [rsp + 0x120]
add eax, 0xdda7
mov dword [rsp + 0x3b4], eax
mov eax, dword [rsp + 0x28c]
mov ecx, dword [rsp + 0x28c]
add eax, ecx
mov ecx, dword [rsp + 0x3b4]
sub ecx, 0x846c
or eax, ecx
xor eax, 0xddf9
mov ecx, dword [rsp + 0x3b8]
xor ecx, 0x342
mov edx, dword [rsp + 0x290]
mov edi, dword [rsp + 0x290]
sub edx, edi
imul ecx, edx
add eax, ecx
mov dword [rsp + 0x3dc], eax
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x124], eax
mov eax, dword [rsp + 0x3bc]
mov ecx, dword [rsp + 0x124]
add eax, ecx
mov dword [rsp + 0x298], eax
mov eax, dword [rsp + 0x3c0]
mov ecx, dword [rsp + 0x124]
add eax, ecx
mov dword [rsp + 0x29c], eax
mov qword [0x1800c6598], 3
mov byte [rsp + 0x20], 2
mov rax, qword [0x1800c6598]
mov qword [rsp + 0x2f0], rax
cmp qword [rsp + 0x2f0], 0
je 0x18003beb8
cmp qword [rsp + 0x2f0], 1
je 0x18003bee2
cmp qword [rsp + 0x2f0], 2
je 0x18003bf62
cmp qword [rsp + 0x2f0], 3
je 0x18003bf76
jmp 0x18003bf80
movzx eax, word [rsp + 0x30]
sar eax, 6
cdqe
mov qword [rsp + 0x70], rax
movsxd rax, dword [rsp + 0x48]
movabs rcx, 0xce8901c6732eb
add rax, rcx
mov dword [rsp + 0x48], eax
jmp 0x18003bf80
cmp dword [rsp + 0x48], 0
jne 0x18003bef6
mov dword [rsp + 0x294], 1
jmp 0x18003bf01
mov dword [rsp + 0x294], 0
movsxd rax, dword [rsp + 0x48]
mov rcx, qword [0x1800c6578]
add rax, rcx
mov ecx, dword [rsp + 0x294]
mov edx, dword [0x1800c65a8]
add edx, ecx
mov ecx, edx
movsxd rcx, ecx
imul rax, rcx
mov rcx, qword [0x1800c6578]
mov rdx, qword [0x1800c65c0]
sub rcx, rdx
not rcx
movzx edx, word [rsp + 0x3c]
movsx edx, dx
movzx edi, word [0x1800c6574]
movzx edi, di
sub edx, edi
movsxd rdx, edx
add rcx, rdx
or rax, rcx
mov word [0x1800c64a4], ax
jmp 0x18003bf80
mov rax, qword [0x1800c6608]
sub rax, 0xe3
mov word [rsp + 0x30], ax
jmp 0x18003bf80
mov dword [0x1800c65bc], 0xdb
mov eax, dword [rsp + 0x3c4]
mov ecx, dword [rsp + 0x124]
add eax, ecx
mov dword [rsp + 0x530], eax
mov eax, dword [rsp + 0x298]
mov ecx, dword [rsp + 0x298]
imul eax, ecx
mov ecx, dword [rsp + 0x29c]
mov edx, dword [rsp + 0x29c]
or ecx, edx
cmp eax, ecx
je 0x18003c950
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x128], eax
mov eax, 0xe3b8
mov word [rsp + 0x28], ax
mov eax, dword [rsp + 0x128]
add eax, 0x564
mov dword [rsp + 0x534], eax
mov dword [rsp + 0x4c], 1
movzx eax, byte [0x1800c64d3]
mov ecx, dword [0x1800c65b8]
add eax, ecx
test eax, eax
jne 0x18003c013
mov qword [rsp + 0x4a0], 1
jmp 0x18003c01f
mov qword [rsp + 0x4a0], 0
movsx eax, word [rsp + 0x44]
not eax
cdqe
movabs rcx, 0xcc15c5d9d092e
or rax, rcx
xor rax, qword [rsp + 0x4a0]
mov qword [0x1800c65e8], rax
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x3c8], eax
cmp dword [rsp + 0x3c8], 1
je 0x18003c05d
jmp 0x18003c079
mov eax, dword [0x1800c65b8]
imul eax, eax, 0x933ba2e9
mov ecx, dword [0x1800c65bc]
sub ecx, eax
mov eax, ecx
mov dword [0x1800c65bc], eax
mov eax, dword [rsp + 0x128]
add eax, 0x5ba
mov dword [rsp + 0x4b0], eax
mov byte [0x1800c64d2], 0
movzx eax, byte [rsp + 0x24]
movzx eax, al
movsx ecx, word [rsp + 0x44]
lea eax, [rcx + rax - 0xefbc]
mov word [rsp + 0x44], ax
movzx eax, byte [0x1800c64d2]
mov byte [rsp + 0x3cc], al
cmp byte [rsp + 0x3cc], 0
je 0x18003c0c6
jmp 0x18003c0fa
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x58], eax
movzx eax, byte [0x1800c64d7]
movsx rax, al
movabs rcx, 0x6da66989d6cb0
sub rax, rcx
movzx ecx, byte [rsp + 0x24]
movzx ecx, cl
sub rcx, rax
mov rax, rcx
mov byte [rsp + 0x24], al
mov eax, dword [rsp + 0x128]
add eax, 0x29a
mov dword [rsp + 0x2e8], eax
movzx eax, byte [0x1800c64c7]
movzx eax, al
movabs rcx, 0x52509f3d3a8de
add rax, rcx
mov byte [rsp + 0x2c], al
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x12c], eax
movzx eax, byte [rsp + 0x24]
movzx eax, al
test eax, eax
je 0x18003c17a
movzx eax, byte [rsp + 0x25]
movzx eax, al
movabs rcx, 0x48d1bb747356c
xor rax, rcx
movsx ecx, word [0x1800c6560]
imul ecx, dword [rsp + 0x58]
movsxd rcx, ecx
imul rax, rcx
mov ecx, 0xe3b870c9
add rax, rcx
mov word [0x1800c6560], ax
jmp 0x18003c1a4
movzx eax, word [rsp + 0x3c]
movsx rax, ax
movabs rcx, 0x1f0885756623b
add rax, rcx
mov word [rsp + 0x3c], ax
movsx eax, word [rsp + 0x38]
imul eax, eax, 0
mov word [0x1800c64c4], ax
mov eax, dword [rsp + 0x3d0]
mov ecx, dword [rsp + 0x12c]
add eax, ecx
mov dword [rsp + 0x4b4], eax
lea rax, [rsp + 0x580]
lea rcx, [0x1800a0990]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x26
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x580]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [0x1800c6570], eax
mov eax, dword [rsp + 0x3d4]
mov ecx, dword [rsp + 0x12c]
add eax, ecx
mov dword [rsp + 0x130], eax
movzx eax, word [rsp + 0x3c]
cwde
and eax, 0x9295
mov dword [rsp + 0x48], eax
movsx rax, word [0x1800c65cc]
movabs rcx, 0xd543bd7d489f9
add rax, rcx
mov word [0x1800c65fc], ax
mov eax, dword [rsp + 0x3d8]
mov ecx, dword [rsp + 0x12c]
add eax, ecx
mov dword [rsp + 0x4b8], eax
mov eax, dword [rsp + 0x130]
mov ecx, dword [rsp + 0x130]
xor eax, ecx
mov ecx, dword [rsp + 0x130]
mov edx, dword [rsp + 0x3dc]
add ecx, edx
cmp eax, ecx
je 0x18003c950
mov eax, dword [0x18051ec90]
mov dword [rsp + 0x134], eax
mov rax, qword [0x1800c65e8]
test rax, rax
jne 0x18003c292
mov dword [rsp + 0x2a0], 1
jmp 0x18003c29d
mov dword [rsp + 0x2a0], 0
movzx eax, word [rsp + 0x40]
cwde
cmp dword [rsp + 0x2a0], eax
jne 0x18003c2c3
mov rax, qword [rsp + 0x68]
test rax, rax
jne 0x18003c2c3
mov dword [rsp + 0x2ac], 0
jmp 0x18003c2ce
mov dword [rsp + 0x2ac], 1
movsxd rax, dword [rsp + 0x48]
cmp qword [0x1800c6598], rax
jg 0x18003c2e9
mov dword [rsp + 0x2a4], 1
jmp 0x18003c2f4
mov dword [rsp + 0x2a4], 0
cmp dword [rsp + 0x2a4], 1
jg 0x18003c30b
mov dword [rsp + 0x2a8], 1
jmp 0x18003c316
mov dword [rsp + 0x2a8], 0
mov eax, dword [rsp + 0x2a8]
cmp dword [rsp + 0x2ac], eax
jle 0x18003c35b
lea rax, [rsp + 0x540]
lea rcx, str.csiso2022jp
mov rdi, rax
mov rsi, rcx
mov ecx, 0xc
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x540]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
cdqe
mov qword [0x1800c6608], rax
jmp 0x18003c373
movsx eax, word [rsp + 0x38]
test eax, eax
je 0x18003c373
movzx eax, word [rsp + 0x28]
movzx eax, ax
sub eax, 0x1b
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x134]
add eax, 0xbfa0
mov dword [rsp + 0x3e0], eax
movsx eax, byte [rsp + 0x22]
mov ecx, dword [0x1800c65ac]
cmp eax, ecx
jg 0x18003c453
mov rax, qword [rsp + 0x68]
movsxd rcx, dword [rsp + 0x48]
cmp rax, rcx
jg 0x18003c3b5
mov rax, qword [0x1800c6568]
test rax, rax
je 0x18003c470
jmp 0x18003b6a6
mov rax, qword [rsp + 0x418]
add rsp, 0x5b8
pop rdi
pop rsi
ret