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

Disassembly:
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x6590
call fcn.1400d8110
sub rsp, rax
mov qword [rsp + 0xc8], 0xfffffffffffffffe
mov qword [rsp + 0x65c0], rbx
mov qword [rsp + 0x65c8], rbp
mov qword [rsp + 0x65d0], rsi
mov rax, qword [0x1401006f0]
xor rax, rsp
mov qword [rsp + 0x6580], rax
or dword [rsp + 0x38], 0xffffffff
xor esi, esi
mov dword [rsp + 0x48], esi
mov ebx, esi
movzx r14d, si
mov word [rsp + 0x34], si
mov word [rsp + 0x36], si
mov qword [rsp + 0x40], rsi
mov r15, rsi
mov qword [rsp + 0x50], rsi
mov dword [rsp + 0x3c], esi
mov dword [rsp + 0x30], esi
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x80], rsi
lea edx, [rsi + 0x40]
lea rcx, [rsp + 0x68]
call fcn.140036538
nop
lea rcx, [rsp + 0x190]
call fcn.140080d68
nop
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x98], rsi
mov qword [rsp + 0xa0], rsi
lea rcx, [rsp + 0xd0]
call fcn.140080d68
nop
mov r13, qword [rsp + 0x68]
mov qword [0x140137518], r13
lea ebp, [rsi + 1]
mov dword [0x1401362d8], ebp
cmp byte [0x14014aa58], sil
jne 0x1400381f3
mov r12d, esi
mov dword [rsp + 0x58], esi
cmp r12d, 0x40
jl 0x140036f7a
cmp byte [0x140148778], sil
je 0x1400375c9
mov rdi, qword [rsp + 0x70]
cmp r12d, edi
jl 0x140036faf
lea eax, [r12 + 1]
movsxd rcx, eax
cmp rcx, qword [rsp + 0x78]
jbe 0x140036faa
sub rcx, rdi
mov rdx, rcx
lea rcx, [rsp + 0x68]
call fcn.140036538
mov r13, qword [rsp + 0x68]
jmp 0x140036faf
mov qword [rsp + 0x70], rcx
movsxd rax, r12d
lea rcx, [rax + rax*8]
lea rax, [r13 + rcx*8]
mov qword [0x140137518], rax
mov edi, 4
mov edx, edi
lea rcx, [0x140136310]
call fcn.14003f7c0
cmp eax, esi
je 0x1400375bc
mov r8, rdi
lea rdx, [0x1401475a5]
lea rcx, [0x140136310]
call fcn.1400c84a0
cmp eax, esi
jne 0x14003751b
call fcn.140064884
cmp eax, esi
jne 0x14003750e
mov word [0x14014769c], si
movzx r9d, byte [0x1401475d9]
movzx ecx, word [0x1401475f8]
lea r8, [0x1401475dc]
lea edx, [rdi - 2]
call fcn.14003fb70
cmp eax, esi
je 0x14003703e
cmp eax, ebx
cmovg ebx, eax
cmp eax, ebp
jg 0x14003748d
movzx ecx, word [0x1401475fa]
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 3]
call fcn.14003fb70
cmp eax, esi
je 0x140037065
cmp eax, ebx
cmovg ebx, eax
cmp eax, ebp
jg 0x1400374b8
movzx edx, word [0x1401475fa]
xor r8d, r8d
mov rcx, qword [0x140147590]
call fcn.1400640bc
movzx edx, word [0x1401475fa]
lea r8, [0x1401475de]
mov rcx, qword [0x140147590]
call fcn.1400877fc
movzx ecx, word [0x1401475fc]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call fcn.14003fb70
cmp eax, esi
je 0x1400370ba
cmp eax, ebx
cmovg ebx, eax
cmp eax, ebp
jg 0x1400374e3
movzx edx, word [0x1401475fa]
mov qword [rsp + 0x20], 0x3000
lea r9, [rsp + 0x3580]
mov r8d, dword [0x14014869c]
mov rcx, qword [0x140147590]
call fcn.140036464
cmp al, sil
je 0x140037116
mov esi, 0x800
mov r8, rsi
lea rdi, [0x14014769c]
mov rdx, rdi
lea rcx, [rsp + 0x3580]
call fcn.140088224
mov r8, rsi
xor edx, edx
mov rcx, rdi
call fcn.1400613c4
lea r8, [rsp + 0xc0]
movzx edx, word [0x1401475e0]
movzx ecx, word [0x1401475e2]
call qword [sym.imp.KERNEL32.dll_DosDateTimeToFileTime]
mov rdx, qword [0x140137518]
add rdx, 0x28
lea rcx, [rsp + 0xc0]
call qword [sym.imp.KERNEL32.dll_LocalFileTimeToFileTime]
mov r11, qword [0x140137518]
xor eax, eax
mov dword [r11 + 0x30], eax
mov dword [r11 + 0x34], eax
mov rax, qword [0x140137518]
xor ecx, ecx
mov dword [rax + 0x38], ecx
mov dword [rax + 0x3c], ecx
mov r8, qword [0x140137518]
lea rax, [r8 + 0x38]
lea r9, [r8 + 0x30]
add r8, 0x28
movzx edx, word [0x1401475fa]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140147590]
call fcn.140036350
movzx edi, word [0x1401475fa]
mov rsi, qword [0x140147590]
xor eax, eax
cmp edi, eax
je 0x140037232
cmp rsi, rax
je 0x140037232
cmp edi, 4
jb 0x14003722b
mov rcx, rsi
call fcn.14003fdd8
movzx ebp, ax
lea rcx, [rsi + 2]
call fcn.14003fdd8
movzx r11d, ax
lea eax, [rdi - 4]
cmp r11d, eax
ja 0x140037226
cmp ebp, 0x17
je 0x1400371fa
lea ecx, [r11 + 4]
add rsi, rcx
mov eax, 0xfffffffc
sub eax, r11d
add edi, eax
cmp edi, 4
jae 0x1400371b8
mov ebp, 1
jmp 0x14003722b
mov ebp, 1
mov dil, bpl
mov ecx, 0x605
call fcn.140076080
mov rdx, rax
lea r8, [0x14014769c]
lea rcx, [0x140166802]
call fcn.1400b1ef4
xor esi, esi
jmp 0x140037237
mov ebp, 1
xor esi, esi
mov dil, sil
jmp 0x140037237
xor esi, esi
mov dil, sil
lea rcx, [rsp + 0x250]
call fcn.140001f88
nop
xor edx, edx
mov r8d, 0x2318
lea rcx, [rsp + 0x250]
call fcn.1400c7170
mov r8d, 0x800
lea rdx, [0x14014769c]
lea rcx, [rsp + 0x270]
call fcn.1400805a0
mov rdx, qword [0x140137518]
add rdx, 0x28
lea rcx, [rsp + 0x1290]
call fcn.1400839f8
mov r11, qword [0x1401475f0]
mov qword [rsp + 0x12b0], r11
mov r9d, 5
cmp dword [0x140148978], ebp
je 0x1400372c1
cmp dword [0x14016155c], esi
jne 0x1400372c1
mov eax, 0x80000005
cmp byte [0x1401657b8], sil
cmove r9d, eax
cmp dil, sil
jne 0x14003746a
xor r8d, r8d
lea rdx, [rsp + 0x250]
lea rcx, [0x14015b3c0]
call fcn.140020da4
cmp eax, esi
je 0x14003746a
mov rcx, qword [0x140137518]
mov eax, dword [0x1401475dc]
xor eax, dword [rcx + 0x40]
and eax, ebp
xor dword [rcx + 0x40], eax
mov rdx, qword [0x140137518]
mov al, byte [0x1401475dc]
and al, 8
mov ecx, esi
cmp al, 8
sete cl
add ecx, ecx
xor ecx, dword [rdx + 0x40]
mov edi, 2
and ecx, edi
xor dword [rdx + 0x40], ecx
mov rcx, qword [0x140137518]
movzx eax, word [0x140147600]
shl eax, 2
xor eax, dword [rcx + 0x40]
and eax, 4
xor dword [rcx + 0x40], eax
mov rcx, qword [0x140137518]
mov eax, dword [0x1401475e4]
mov dword [rcx + 0x18], eax
mov rcx, qword [0x140137518]
mov rax, qword [0x1401475e8]
mov qword [rcx + 8], rax
mov rcx, qword [0x140137518]
mov rax, qword [0x1401475f0]
mov qword [rcx + 0x10], rax
cmp byte [0x1401475db], dil
jne 0x1400373cb
cmp byte [0x1401475da], 0x2a
jbe 0x1400373cb
cmp byte [0x1401616b1], sil
je 0x14003739a
cmp dword [0x1401362b8], esi
jne 0x140037460
jmp 0x1400373a6
cmp dword [0x1401362b8], esi
jne 0x140037460
mov ecx, 0x342
call fcn.140076080
mov rdx, rax
lea r8, [0x14014769c]
lea rcx, [0x140166802]
call fcn.1400b1ef4
jmp 0x140037460
movzx eax, word [0x1401475de]
cmp ax, di
jb 0x1400373e1
mov ecx, 5
cmp ax, cx
jbe 0x140037425
cmp ax, 7
je 0x140037425
mov ecx, 9
cmp ax, cx
ja 0x140037425
call fcn.140097270
mov r11, qword [0x140137518]
mov rax, qword [0x140147608]
mov qword [r11], rax
lea rdx, [0x14014769c]
lea rcx, [rsp + 0x190]
call fcn.140080bc0
add r12d, ebp
mov dword [rsp + 0x58], r12d
jmp 0x14003746a
cmp byte [0x1401616b1], sil
je 0x140037438
cmp dword [0x1401362b8], esi
jne 0x140037460
jmp 0x140037440
cmp dword [0x1401362b8], esi
jne 0x140037460
mov ecx, 0x342
call fcn.140076080
mov rdx, rax
lea r8, [0x14014769c]
lea rcx, [0x140166802]
call fcn.1400b1ef4
add r14w, bp
mov word [rsp + 0x34], r14w
add r15, rbp
mov qword [rsp + 0x50], r15
mov rcx, qword [rsp + 0x1270]
cmp rcx, rsi
je 0x140036f67
call fcn.1400c7040
jmp 0x140036f67
mov ecx, 0x2ab
call fcn.140076080
mov rdx, rax
lea r8, [0x14014769c]
lea rcx, [0x140166802]
call fcn.1400b1ef4
mov edi, ebp
mov dword [rsp + 0x30], ebp
jmp 0x1400375cd
mov ecx, 0x2ab
call fcn.140076080
mov rdx, rax
lea r8, [0x14014769c]
lea rcx, [0x140166802]
call fcn.1400b1ef4
mov edi, ebp
mov dword [rsp + 0x30], ebp
jmp 0x1400375cd
mov ecx, 0x2ab
call fcn.140076080
mov rdx, rax
lea r8, [0x14014769c]
lea rcx, [0x140166802]
call fcn.1400b1ef4
mov edi, ebp
mov dword [rsp + 0x30], ebp
jmp 0x1400375cd
mov ebx, eax
mov edi, ebp
mov dword [rsp + 0x30], ebp
jmp 0x1400375cd
mov rcx, qword [0x140147620]
mov rax, rcx
xor rax, r15
movzx eax, ax
cmp rax, rsi
je 0x140037559
cmp rcx, 0xffff
je 0x140037559
mov ecx, 0x2ae
call fcn.140076080
mov rdx, rax
lea rcx, [0x140166802]
call fcn.1400b1ef4
mov ebx, 3
jmp 0x1400375b4
mov byte [rsp + 0x2570], 0x50
mov dword [rsp + 0x2571], 0x6064b
mov r8, rdi
lea rdx, [0x1401475aa]
lea rcx, [0x140136310]
call fcn.1400c84a0
cmp eax, esi
je 0x1400375b0
cmp byte [0x140148780], sil
je 0x1400375aa
mov r8, rdi
lea rdx, [rsp + 0x2570]
lea rcx, [0x140136310]
call fcn.1400c84a0
cmp eax, esi
je 0x1400375b0
mov dword [rsp + 0x3c], ebp
jmp 0x1400375b4
mov dword [rsp + 0x3c], esi
mov edi, ebp
mov dword [rsp + 0x30], ebp
jmp 0x1400375cd
mov ebx, 0x33
mov edi, ebp
mov dword [rsp + 0x30], ebp
jmp 0x1400375cd
mov edi, dword [rsp + 0x30]
mov r13, qword [0x140147580]
mov r14, qword [0x140147538]
mov qword [rsp + 0x60], r14
mov r15, qword [0x140147540]
cmp byte [0x140148778], sil
je 0x140037646
mov dword [0x14014877c], esi
lea rdx, [0x1400e0bd0]
lea rcx, [0x140166802]
call fcn.140062a4c
mov rcx, qword [0x140147560]
cmp rcx, rsi
je 0x14003761c
mov rax, qword [rcx]
mov edx, ebp
call qword [rax]
mov qword [0x140147560], rsi
call fcn.14003f4a8
mov r11b, byte [0x1401616b1]
neg r11b
sbb cl, cl
and cl, 0xfc
add cl, 0x58
lea rdx, [0x140166802]
call fcn.1400a4154
mov ebp, esi
cmp r12d, esi
jle 0x140038117
mov r12d, dword [rsp + 0x48]
shl r12d, 6
lea eax, [r12 + rbp]
mov dword [rsp + 0x38], eax
movsxd rax, ebp
lea rcx, [rax + rax*8]
mov rax, qword [rsp + 0x68]
lea rax, [rax + rcx*8]
mov qword [0x140137518], rax
lea rcx, [rsp + 0x190]
call fcn.140080e80
mov rsi, rax
xor edi, edi
cmp byte [0x140148778], dil
je 0x140037704
mov rcx, qword [0x140137518]
mov edx, dword [rcx + 0x20]
cmp edx, dword [0x14014877c]
je 0x140037704
movzx ecx, word [0x140147610]
cmp edx, ecx
jne 0x1400376c6
lea rdx, [0x1400e0b78]
lea rcx, [0x140166802]
call fcn.140062a4c
jmp 0x1400376d2
lea rcx, [0x140166802]
call fcn.140036694
mov rax, qword [0x140137518]
mov ecx, dword [rax + 0x20]
mov dword [0x14014877c], ecx
mov rcx, qword [0x140147560]
cmp rcx, rdi
je 0x1400376f8
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov qword [0x140147560], rdi
call fcn.14003f4a8
mov rax, qword [0x140137518]
mov r8, qword [0x140147588]
add r8, qword [rax]
mov rax, r8
cqo
mov r9d, 0x1fff
and rdx, r9
add rax, rdx
and rax, r9
sub rax, rdx
mov rdi, rax
mov rdx, r8
sub rdx, rax
xor eax, eax
cmp r8, rax
jge 0x1400377e5
mov ecx, 0x2ae
call fcn.140076080
mov rdx, rax
lea rcx, [0x140166802]
call fcn.1400b1ef4
mov ebx, 2
xor r8d, r8d
cmp dword [rsp + 0x38], r8d
jne 0x1400377d6
mov rax, qword [0x140147588]
cmp rax, r8
je 0x1400377d6
mov qword [rsp + 0x40], rax
mov qword [0x140147588], r8
mov rax, qword [0x140137518]
mov rcx, qword [rax]
mov rax, rcx
cqo
and edx, 0x1fff
add rax, rdx
and eax, 0x1fff
sub rax, rdx
mov rdi, rax
mov rdx, rcx
sub rdx, rax
cmp rcx, r8
jge 0x1400377e8
mov ecx, 0x2ae
call fcn.140076080
mov rdx, rax
lea rcx, [0x140166802]
call fcn.1400b1ef4
mov ebx, 3
xor esi, esi
lea edi, [rbx - 2]
jmp 0x1400380f7
mov ebx, 3
xor esi, esi
lea edi, [rbx - 2]
jmp 0x1400380f7
xor r8d, r8d
cmp rdx, qword [0x140147580]
jne 0x140037827
cmp byte [0x140148778], r8b
jne 0x140037827
mov eax, dword [0x140147538]
sub eax, dword [0x140147530]
sub eax, edi
cdqe
add qword [0x140147540], rax
movsxd rax, edi
add rax, qword [0x140147530]
mov qword [0x140147538], rax
jmp 0x1400378b4
mov rcx, qword [0x140147560]
mov rax, qword [rcx]
xor r8d, r8d
call qword [rax + 0x10]
mov rcx, qword [0x140147560]
mov rax, qword [rcx]
call qword [rax + 0x18]
mov qword [0x140147580], rax
mov edx, 0x2000
mov rcx, qword [0x140147530]
call fcn.14003f61c
movsxd r8, eax
mov qword [0x140147540], r8
xor eax, eax
cmp r8, rax
jg 0x140037895
mov ecx, 0x2ae
call fcn.140076080
mov rdx, rax
lea rcx, [0x140166802]
call fcn.1400b1ef4
mov ebx, 3
xor esi, esi
lea edi, [rbx - 2]
jmp 0x1400380f7
movsxd rdx, edi
mov rax, qword [0x140147530]
lea rcx, [rdx + rax]
mov qword [0x140147538], rcx
sub r8, rdx
mov qword [0x140147540], r8
mov edx, 4
lea rcx, [0x140136310]
call fcn.14003f7c0
xor edi, edi
cmp eax, edi
jne 0x1400378f1
mov ecx, 0x2ae
call fcn.140076080
mov rdx, rax
lea rcx, [0x140166802]
call fcn.1400b1ef4
lea ebx, [rdi + 3]
xor esi, esi
lea edi, [rbx - 2]
jmp 0x1400380f7
mov r8d, 4
lea rdx, [0x1401475a0]
lea rcx, [0x140136310]
call fcn.1400c84a0
cmp eax, edi
je 0x140037a01
mov ecx, 0x2ae
call fcn.140076080
mov rdx, rax
lea rcx, [0x140166802]
call fcn.1400b1ef4
mov ebx, 2
mov rax, qword [0x140147588]
xor ecx, ecx
cmp dword [rsp + 0x38], ecx
jne 0x140037952
cmp rax, rcx
je 0x140037952
mov qword [rsp + 0x40], rax
mov qword [0x140147588], rcx
jmp 0x140037970
cmp rax, rcx
jne 0x1400380c1
mov rdi, qword [rsp + 0x40]
cmp rdi, rcx
je 0x1400380ba
mov qword [0x140147588], rdi
mov rcx, qword [0x140137518]
mov rcx, qword [rcx]
call fcn.14003f9e4
xor edi, edi
cmp eax, edi
jne 0x1400379d9
lea edx, [rdi + 4]
lea rcx, [0x140136310]
call fcn.14003f7c0
cmp eax, edi
je 0x1400379d9
lea r8d, [rdi + 4]
lea rdx, [0x1401475a0]
lea rcx, [0x140136310]
call fcn.1400c84a0
cmp eax, edi
je 0x140037a01
mov ecx, 0x2ae
call fcn.140076080
mov rdx, rax
lea rcx, [0x140166802]
call fcn.1400b1ef4
lea ebx, [rdi + 3]
xor esi, esi
lea edi, [rbx - 2]
jmp 0x1400380f7
mov ecx, 0x2ae
call fcn.140076080
mov rdx, rax
lea rcx, [0x140166802]
call fcn.1400b1ef4
mov ebx, 3
xor esi, esi
lea edi, [rbx - 2]
jmp 0x1400380f7
call fcn.140064230
mov edi, eax
xor eax, eax
cmp edi, eax
je 0x140037a33
mov ecx, 0x2ae
call fcn.140076080
mov rdx, rax
lea rcx, [0x140166802]
call fcn.1400b1ef4
mov ebx, edi
xor esi, esi
lea edi, [rsi + 1]
jmp 0x1400380f7
xor edi, edi
mov word [0x14014769c], di
movzx ecx, word [0x1401475d0]
xor r9d, r9d
lea r8, [0x1401475b2]
lea edx, [rdi + 2]
call fcn.14003fb70
cmp eax, edi
je 0x140037a8f
cmp eax, ebx
cmovg ebx, eax
lea ecx, [rdi + 1]
cmp eax, ecx
jle 0x140037a8f
mov ecx, 0x2ab
call fcn.140076080
mov rdx, rax
lea r8, [0x14014769c]
lea rcx, [0x140166802]
call fcn.1400b1ef4
xor esi, esi
lea edi, [rsi + 1]
jmp 0x1400380f7
mov rcx, qword [0x140147590]
cmp rcx, rdi
je 0x140037aa7
call fcn.1400c7040
mov qword [0x140147590], rdi
movzx ecx, word [0x1401475d2]
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 3]
call fcn.14003fb70
cmp eax, edi
je 0x140037af9
cmp eax, ebx
cmovg ebx, eax
mov ecx, 1
cmp eax, ecx
jle 0x140037af9
mov ecx, 0x2ab
call fcn.140076080
mov rdx, rax
lea r8, [0x14014769c]
lea rcx, [0x140166802]
call fcn.1400b1ef4
xor esi, esi
lea edi, [rsi + 1]
jmp 0x1400380f7
movzx edx, word [0x1401475d2]
mov r8b, 1
mov rcx, qword [0x140147590]
call fcn.1400640bc
movzx edx, word [0x1401475d2]
mov qword [rsp + 0x20], 0x3000
lea r9, [rsp + 0x3580]
mov r8d, dword [0x14014869c]
mov rcx, qword [0x140147590]
call fcn.140036464
cmp al, dil
je 0x140037b6d
mov r8d, 0x800
lea rdx, [0x14014769c]
lea rcx, [rsp + 0x3580]
call fcn.140088224
xor edx, edx
mov r8d, 0x800
lea rcx, [0x14014769c]
call fcn.1400613c4
mov rcx, qword [0x140137518]
mov rax, qword [rcx + 0x28]
mov qword [0x1401486a0], rax
mov rax, qword [rcx + 0x30]
mov qword [0x1401486a8], rax
mov rax, qword [rcx + 0x38]
mov qword [0x1401486b0], rax
movzx edx, word [0x1401475d2]
lea rax, [rsp + 0xb8]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0xb0]
lea r8, [rsp + 0xa8]
mov rcx, qword [0x140147590]
call fcn.140036350
cmp al, dil
je 0x140037bf7
mov rax, qword [rsp + 0xa8]
mov qword [0x1401486a0], rax
mov rax, qword [rsp + 0xb0]
mov qword [0x1401486a8], rax
mov rax, qword [rsp + 0xb8]
mov qword [0x1401486b0], rax
movzx edx, word [0x1401475d2]
lea r8, [0x1401475b4]
mov rcx, qword [0x140147590]
call fcn.1400877fc
cmp rsi, rdi
je 0x140037c30
cmp word [rsi], di
je 0x140037c30
mov r8d, 0x800
mov rdx, rsi
lea rcx, [0x14014769c]
call fcn.1400805a0
lea rcx, [0x14014769c]
call fcn.140061128
cmp word [rax], 0x5c
sete sil
cmp sil, dil
je 0x140037c4c
mov word [rax], di
cmp word [0x14014769c], di
je 0x140037c85
cmp word [0x14014769e], di
je 0x140037c85
lea rax, [0x1401476a0]
cmp word [0x1401476a0], di
je 0x140037c85
cmp word [rax], 0x3a
jne 0x140037c7c
mov ecx, 0x5f
mov word [rax], cx
add rax, 2
cmp word [rax], di
jne 0x140037c6e
lea rax, [0x14014769c]
mov rdx, rax
mov rcx, rax
call fcn.14006164c
mov r8d, 0x800
lea rdx, [0x14014769c]
xor ecx, ecx
call fcn.14000a994
mov r11, qword [0x140137518]
test byte [r11 + 0x24], 0x10
je 0x140037ccf
cmp qword [r11 + 0x10], rdi
jne 0x140037ccf
cmp dword [r11 + 0x1c], edi
je 0x140037ccc
cmp dword [r11 + 0x1c], 0xb
jne 0x140037ccf
mov sil, 1
mov eax, 0x49
cmp word [0x1401657e2], ax
sete r9b
mov byte [rsp + 0x20], dil
mov r8b, byte [0x1401616b1]
lea rdx, [0x14014769c]
xor ecx, ecx
call fcn.14000a57c
cmp al, dil
je 0x14003810b
movzx ecx, word [0x1401657e2]
call fcn.140088488
cmp eax, 0x49
jne 0x140037d36
lea rax, [0x14014769c]
mov qword [rsp + 0x20], rax
lea r9, [0x140166802]
lea r8, [0x1401657e4]
xor edx, edx
xor ecx, ecx
call fcn.140040e6c
cmp byte [0x1401616b1], dil
jne 0x140037ffc
xor eax, eax
cmp sil, al
jne 0x140037eb3
xor esi, esi
lea rcx, [0x14014769c]
call fcn.14004001c
cmp eax, 0xffffffff
je 0x140037e99
cmp eax, esi
je 0x140037dad
cmp eax, 1
jne 0x140037ffe
mov eax, dword [0x1401614f8]
cmp eax, 2
je 0x1400380dd
cmp byte [0x14016151c], sil
jne 0x140037d93
cmp byte [0x14016151b], sil
je 0x140037d9b
cmp edi, esi
je 0x1400380e4
cmp eax, esi
je 0x140037dcf
cmp eax, 3
jne 0x140037ffe
lea edi, [rax - 1]
jmp 0x140037dd4
mov eax, dword [0x1401614f8]
mov edi, 2
cmp eax, edi
je 0x1400380d6
cmp eax, esi
je 0x140037dd4
cmp eax, 3
jne 0x140037ffe
jmp 0x140037dd4
mov edi, 2
mov rcx, rsi
lea r14, [0x1401362b0]
movzx eax, word [rcx + r14 + 0x113ec]
mov word [rsp + rcx + 0x2580], ax
add rcx, rdi
cmp ax, si
jne 0x140037dde
mov r14, qword [rsp + 0x60]
movzx r9d, word [0x1401475b8]
shl r9d, 0x10
movzx eax, word [0x1401475b6]
add r9d, eax
mov dword [rsp + 0x20], esi
mov r8, qword [0x1401362f8]
lea rdx, [rsp + 0x2580]
xor ecx, ecx
call fcn.14000b91c
cmp al, 0x43
je 0x140038105
cmp al, 0x41
je 0x140037e89
cmp al, 0x4e
je 0x1400380c8
cmp al, 0x52
je 0x140037e5d
cmp al, 0x59
je 0x140037ffe
cmp al, 0x72
je 0x140037e5d
cmp al, 0x79
je 0x140037ffe
jmp 0x140037dd4
mov rcx, rsi
lea rdx, [0x1401362b0]
movzx eax, word [rsp + rcx + 0x2580]
mov word [rcx + rdx + 0x113ec], ax
add rcx, rdi
cmp ax, si
jne 0x140037e67
mov edi, 1
jmp 0x140037d50
mov eax, 1
mov dword [0x1401614f8], eax
jmp 0x140037ffe
cmp byte [0x14016151b], sil
je 0x140037ffe
cmp edi, esi
je 0x1400380cf
jmp 0x140037ffe
xor esi, esi
cmp byte [0x14016151b], sil
jne 0x1400380eb
cmp word [0x14014769c], si
je 0x1400380f2
lea edi, [rsi + 1]
cmp dword [0x140161520], edi
je 0x1400380f7
mov edi, esi
mov rax, qword [0x140137518]
cmp dword [rax + 0x1c], esi
je 0x140037ef2
cmp dword [rax + 0x1c], 0xb
jne 0x140037ef5
mov edi, dword [rax + 0x24]
lea rcx, [0x14014769c]
call fcn.14003c3d4
cmp al, sil
jne 0x140037f9f
cmp byte [0x14016168e], sil
sete dl
mov r8d, edi
lea rcx, [0x14014769c]
call fcn.14003ca1c
cmp eax, esi
je 0x140037f96
mov dl, 1
lea rcx, [0x14014769c]
call fcn.14003cae4
cmp byte [0x14016168e], sil
sete dl
mov r8d, edi
lea rdi, [0x14014769c]
mov rcx, rdi
call fcn.14003ca1c
cmp eax, esi
je 0x140037fa6
mov ecx, 0x1f7
call fcn.140076080
mov rdx, rax
mov r8, rdi
lea rcx, [0x140166802]
call fcn.1400b1ef4
mov rdx, rdi
lea rcx, [0x140134b90]
call fcn.140032f58
lea rcx, [0x140134b90]
call fcn.1400330fc
mov edi, 1
jmp 0x1400380f7
lea rdi, [0x14014769c]
jmp 0x140037fa6
lea rdi, [0x14014769c]
mov rdx, rdi
lea rcx, [rsp + 0xd0]
call fcn.140080bc0
mov rdx, qword [0x1401486a0]
lea rcx, [rsp + 0x88]
call fcn.1400366f4
mov rdx, qword [0x1401486b0]
lea rcx, [rsp + 0x88]
call fcn.1400366f4
mov rdx, qword [0x1401486a8]
lea rcx, [rsp + 0x88]
call fcn.1400366f4
mov edi, 1
jmp 0x1400380f7
xor esi, esi
mov rax, qword [0x140137518]
mov edi, 1
test byte [rax + 0x40], dil
je 0x140038098
call fcn.140087db8
cmp eax, esi
je 0x140038098
lea ecx, [rdi + 8]
cmp eax, ecx
je 0x14003817f
cmp eax, edi
jne 0x140038071
cmp byte [0x1401616b1], sil
je 0x14003803f
cmp dword [0x1401362b8], esi
jne 0x140038067
jmp 0x140038047
cmp dword [0x1401362b8], esi
jne 0x140038067
mov ecx, 0x1fb
call fcn.140076080
mov rdx, rax
lea r8, [0x14014769c]
lea rcx, [0x140166802]
call fcn.1400b1ef4
add word [rsp + 0x36], di
jmp 0x1400380f7
cmp eax, ebx
cmovg ebx, eax
mov ecx, 0x1fb
call fcn.140076080
mov rdx, rax
lea r8, [0x14014769c]
lea rcx, [0x140166802]
call fcn.1400b1ef4
jmp 0x1400380f7
mov dword [0x140147654], esi
call fcn.14003681c
cmp eax, esi
je 0x1400380f7
cmp eax, ebx
cmovg ebx, eax
cmp dword [0x140147654], edi
jg 0x140038196
jmp 0x1400380f7
xor esi, esi
lea edi, [rsi + 1]
jmp 0x1400380f7
xor esi, esi
lea edi, [rsi + 1]
jmp 0x1400380f7
mov edi, 1
jmp 0x1400380f7
mov edi, 1
jmp 0x1400380f7
mov edi, 1
jmp 0x1400380f7
mov edi, 1
jmp 0x1400380f7
mov edi, 1
jmp 0x1400380f7
mov edi, 1
jmp 0x1400380f7
mov edi, 1
add ebp, edi
cmp ebp, dword [rsp + 0x58]
jl 0x14003765a
jmp 0x140038113
mov edi, dword [rsp + 0x30]
jmp 0x140038117
mov edi, dword [rsp + 0x30]
xor esi, esi
jmp 0x140038117
mov edi, dword [rsp + 0x30]
mov rcx, qword [0x140147560]
mov rax, qword [rcx]
xor r8d, r8d
mov rdx, r13
call qword [rax + 0x10]
mov rcx, qword [0x140147560]
mov rax, qword [rcx]
call qword [rax + 0x18]
mov qword [0x140147580], rax
mov edx, 0x2000
mov rcx, qword [0x140147530]
call fcn.14003f61c
mov qword [0x140147538], r14
mov qword [0x140147540], r15
mov ebp, 1
add dword [rsp + 0x48], ebp
cmp edi, esi
jne 0x1400381e8
mov r13, qword [rsp + 0x68]
mov r14w, word [rsp + 0x34]
mov r15, qword [rsp + 0x50]
jmp 0x140036f53
xor ecx, ecx
call fcn.1400b189c
mov r13, qword [rsp + 0x68]
mov r14w, word [rsp + 0x34]
mov rbp, rdi
jmp 0x1400381f3
mov rcx, qword [rsp + 0xd0]
cmp rcx, rsi
je 0x1400381a9
call fcn.1400c7040
nop
mov rcx, qword [rsp + 0x88]
cmp rcx, rsi
je 0x1400381bc
call fcn.1400c7040
nop
mov rcx, qword [rsp + 0x190]
cmp rcx, rsi
je 0x1400381cf
call fcn.1400c7040
nop
mov rax, qword [rsp + 0x68]
cmp rax, rsi
je 0x1400381e1
mov rcx, rax
call fcn.1400c7040
mov eax, ebx
jmp 0x14003841f
mov r13, qword [rsp + 0x68]
mov r14w, word [rsp + 0x34]
mov r12d, 0x800
mov r8, r12
lea rdx, [rsp + 0x2580]
lea rcx, [rsp + 0xd0]
call fcn.140080da0
mov rsi, qword [rsp + 0x88]
xor r15d, r15d
cmp al, r15b
je 0x140038312
lea rdi, [rsi + 0x10]
mov rax, qword [rdi - 0x10]
mov qword [rsp + 0x60], rax
mov rax, qword [rdi - 8]
mov qword [rsp + 0x40], rax
mov rax, qword [rdi]
mov qword [rsp + 0x2570], rax
lea rcx, [rsp + 0x48]
call fcn.140083b0c
lea rcx, [rsp + 0x58]
call fcn.140083b0c
lea rcx, [rsp + 0x50]
call fcn.140083b0c
cmp dword [0x14016277c], r15d
je 0x14003827c
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x48]
call fcn.1400839f8
cmp dword [0x140162780], r15d
je 0x1400382a2
cmp dword [rsp + 0x44], r15d
jne 0x140038293
cmp dword [rsp + 0x40], r15d
je 0x1400382a2
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x58]
call fcn.1400839f8
cmp dword [0x140162784], r15d
je 0x1400382d1
cmp dword [rsp + 0x2574], r15d
jne 0x1400382bf
cmp dword [rsp + 0x2570], r15d
je 0x1400382d1
lea rdx, [rsp + 0x2570]
lea rcx, [rsp + 0x50]
call fcn.1400839f8
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x2580]
call fcn.14003c20c
add rdi, 0x18
mov r8, r12
lea rdx, [rsp + 0x2580]
lea rcx, [rsp + 0xd0]
call fcn.140080da0
cmp al, r15b
jne 0x140038229
cmp byte [0x14014aa58], r15b
jne 0x14003834a
cmp dword [rsp + 0x3c], r15d
je 0x14003834a
cmp byte [0x140148778], r15b
jne 0x14003834a
mov ecx, 0x2ae
call fcn.140076080
mov rdx, rax
lea rcx, [0x140166802]
call fcn.1400b1ef4
cmp ebx, r15d
cmove ebx, ebp
mov ebp, dword [rsp + 0x38]
mov eax, 1
add ebp, eax
movzx r12d, word [rsp + 0x36]
mov edi, r12d
cmp ebp, r12d
jne 0x140038396
lea ecx, [rax + 0x48]
cmp word [0x1401657e2], cx
je 0x140038396
cmp dword [0x1401486b8], r15d
jne 0x140038396
mov ecx, 0x346
call fcn.140076080
mov rdx, rax
lea rcx, [0x140166802]
call fcn.1400b1ef4
mov eax, 1
cmp ebp, r15d
jne 0x1400383b0
cmp ebx, eax
jg 0x1400383b0
mov ebx, 0xb
lea eax, [rbx + 0x46]
cmp r14w, r15w
cmova ebx, eax
jmp 0x1400383dc
cmp ebp, edi
jne 0x1400383bf
cmp ebx, eax
jg 0x1400383bf
mov ebx, 0x52
jmp 0x1400383dc
cmp r14w, r15w
jbe 0x1400383d0
cmp ebx, eax
jg 0x1400383d0
mov ebx, 0x51
jmp 0x1400383dc
cmp r12w, r15w
jbe 0x1400383dc
cmp ebx, r15d
cmove ebx, eax
mov rcx, qword [rsp + 0xd0]
cmp rcx, r15
je 0x1400383ef
call fcn.1400c7040
nop
cmp rsi, r15
je 0x1400383fd
mov rcx, rsi
call fcn.1400c7040
nop
mov rcx, qword [rsp + 0x190]
cmp rcx, r15
je 0x140038410
call fcn.1400c7040
nop
cmp r13, r15
je 0x14003841d
mov rcx, r13
call fcn.1400c7040
mov eax, ebx
mov rcx, qword [rsp + 0x6580]
xor rcx, rsp
call fcn.1400c6350
lea r11, [rsp + 0x6590]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret