Function at 0x18004d230
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x70]
sub rsp, 0x170
mov rax, qword [0x1800f6ae8]
xor rax, rsp
mov qword [rbp + 0x60], rax
mov rdi, qword [rbp - 0x80]
lea r15d, [rcx - 0x13]
mov ebx, dword [rsp + 0x40]
mov r12, rdx
mov rdx, qword [rbp - 0x80]
mov r13d, ecx
mov qword [rbp - 0x60], rdx
mov r14d, ecx
mov dword [rbp - 0x40], ecx
lea r11, [0x180000000]
mov qword [rbp - 0x50], rdi
cmp ecx, r15d
jbe 0x18004d6fa
mov rax, qword [rbp - 0x80]
lea esi, [rcx - 0x1f]
mov r9d, dword [rsp + 0x40]
mov r10, qword [rbp - 0x80]
mov r8d, dword [rsp + 0x40]
mov qword [rsp + 0x48], rax
mov rax, qword [rbp - 0x80]
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x68], r9d
mov qword [rbp - 0x68], r10
mov dword [rsp + 0x40], r8d
cmp esi, 0x3a
ja case.0x18004d2e4.18
movzx eax, byte [r11 + rsi + 0x4e054]
mov ecx, dword [r11 + rax*4 + 0x4e008]
add rcx, r11
jmp rcx
xor ebx, ebx
jmp case.0x18004d2e4.18
mov rax, qword [r12]
mov ecx, dword [rax]
lea eax, [rcx - 0x7f2bb708]
cmp eax, 2
jbe case.0x18004d2e4.18
lea eax, [rcx - 0x7f2bb76d]
cmp eax, 2
ja case.0x18004d2e4.2
mov ebx, 0x32
cmp ebx, 0x32
je 0x18004d66e
cmp ebx, 0xb8
jne 0x18004d693
mov rax, qword [r12]
lea r8, [rbp - 0x50]
xor edx, edx
mov qword [rbp - 0x50], rax
lea ecx, [rbx + 9]
call fcn.18004e1b0
jmp case.0x18004d2e4.2
mov r9d, dword [rbp + 0x28]
sub r9d, dword [rbp + 0x1c]
mov dword [rsp + 0x68], r9d
jmp case.0x18004d2e4.18
xor ecx, ecx
mov qword [rsp + 0x48], rcx
jmp 0x18004d64f
mov rdx, qword [r12]
movsxd rax, dword [rdx + 0xa4]
test eax, eax
je 0x18004d4b7
lea rcx, [rax + rax*2]
shl rcx, 4
add rcx, qword [rdx + 0xb0]
mov eax, dword [rcx - 0x24]
cmp dword [rcx - 0x28], eax
jl 0x18004d4b7
mov edi, 0x103
nop word [rax + rax]
mov eax, edi
sub eax, 0xff
je 0x18004d49d
sub eax, 1
je 0x18004d454
sub eax, 1
je 0x18004d42e
sub eax, 1
je 0x18004d41b
cmp eax, 1
jne 0x18004d4a5
mov rax, qword [r12]
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x78], rax
xor r9d, r9d
lea rax, [rbp + 0x48]
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rax
xor edx, edx
lea rax, [rsp + 0x78]
mov dword [rsp + 0x58], 0xb
mov r8d, 0xec
mov qword [rsp + 0x20], rax
call fcn.1800bfec0
mov r9d, dword [rsp + 0x68]
mov ebx, eax
mov r10, qword [rbp - 0x68]
jmp 0x18004d4a5
test ebx, ebx
jne 0x18004d6aa
mov rax, qword [rbp + 0x48]
mov qword [rsp + 0x48], rax
jmp 0x18004d4a5
mov rax, qword [r12]
lea rdx, [rsp + 0x78]
mov ecx, 0x59
mov qword [rsp + 0x78], rax
call fcn.18004d230
mov r9d, dword [rsp + 0x68]
mov rbx, rax
mov r10, qword [rbp - 0x68]
jmp 0x18004d4a5
test ebx, ebx
jne 0x18004d6aa
mov rax, qword [r12]
lea r8, [rsp + 0x60]
mov qword [rsp + 0x78], rax
lea rdx, [rsp + 0x58]
lea rax, [rsp + 0x78]
mov dword [rsp + 0x58], r9d
lea r9d, [rbx + 0x4a]
mov qword [rsp + 0x20], rax
lea rcx, [rbp - 8]
mov qword [rsp + 0x60], r10
call fcn.180079ae0
mov r9d, dword [rsp + 0x68]
mov r10, qword [rbp - 0x68]
mov ebx, dword [rax]
jmp 0x18004d4a5
test ebx, ebx
jne 0x18004d6aa
dec edi
cmp edi, 0xfe
ja 0x18004d3a0
mov rdi, qword [rbp - 0x50]
mov rcx, qword [r12]
movsxd rax, dword [rcx + 0xa4]
lea rdx, [rax + rax*2]
shl rdx, 4
add rdx, qword [rcx + 0xb0]
mov qword [rbp - 0x60], rdx
jmp case.0x18004d2e4.18
mov rax, qword [r12]
mov dword [rsp + 0x40], 0
cmp dword [rax], 0x7f2bb712
je case.0x18004d2e4.18
mov dword [rbp - 0x58], 0x7f2bb712
jmp case.0x18004d2e4.2
mov rax, qword [r12]
lea rdx, [rbp + 0x18]
mov r9d, 0x124
mov qword [rsp + 0x78], rax
xor r8d, r8d
lea rcx, [rsp + 0x78]
call fcn.180009a80
jmp 0x18004d637
mov rax, qword [r12]
mov ecx, dword [rax + 0x10]
and ecx, 0x20
mov dword [rbp - 0x58], ecx
jmp case.0x18004d2e4.18
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
mov qword [rbp - 0x58], rax
jmp 0x18004d63d
mov r10, qword [rbp + 0x50]
mov qword [rbp - 0x68], r10
jmp case.0x18004d2e4.18
cmp qword [rdx + 0x28], 0
jne case.0x18004d2e4.18
nop
mov dword [rbp - 0x58], 0x7f2bb780
jmp case.0x18004d2e4.2
xor edi, edi
mov qword [rbp - 0x50], rdi
jmp case.0x18004d2e4.18
mov qword [rbp - 0x48], 0
jmp case.0x18004d2e4.18
mov rdx, qword [r12]
mov rax, qword [rdx + 8]
test byte [rax + 0x10], 1
jne 0x18004d5b7
mov ecx, 0x16
mov eax, ecx
sub eax, 0x16
je 0x18004d5a9
cmp eax, 1
je case.0x18004d2e4.2
jmp 0x18004d5b0
mov dword [rbp - 0x58], 0x7f2bb715
inc ecx
cmp ecx, 0x18
jb 0x18004d597
cmp qword [rdx + 0xb0], 0
je 0x18004d560
jmp 0x18004d646
mov r11, qword [rdx]
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x50], r11
jmp 0x18004d654
mov rcx, qword [r12]
xor edx, edx
mov r8, qword [rcx + 0x30]
sub r8, qword [rcx + 0x20]
mov rcx, qword [rcx + 0x40]
shr r8, 3
inc r8
call sub.VCRUNTIME140.dll_memset
jmp 0x18004d63d
mov rax, qword [r12]
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x78], rax
xor r9d, r9d
lea rax, [rbp + 0x48]
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rax
xor edx, edx
lea rax, [rsp + 0x78]
mov dword [rsp + 0x58], 0
mov r8d, 0xec
mov qword [rsp + 0x20], rax
call fcn.1800bfec0
mov ebx, eax
test eax, eax
jne 0x18004d6aa
mov r10, qword [rbp - 0x68]
mov r9d, dword [rsp + 0x68]
mov rdx, qword [rbp - 0x60]
mov rcx, qword [rsp + 0x48]
mov r11, qword [rsp + 0x50]
dec r14d
dec esi
cmp r14d, r15d
jbe 0x18004d724
lea r11, [0x180000000]
jmp 0x18004d2c7
mov rax, qword [r12]
lea r8, [0x1800d9468]
xor r9d, r9d
mov qword [rbp - 0x50], rax
lea rdx, [rbp - 0x50]
mov dword [rsp + 0x20], 2
xor ecx, ecx
call fcn.18000d2e0
add ebx, 0x86
cmp ebx, 0x13e
jb 0x18004d316
jmp case.0x18004d2e4.2
mov r9, qword [rbp - 0x80]
mov rax, qword [rbp - 0x80]
mov ecx, dword [rsp + 0x40]
mov esi, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
movzx r13d, byte [rbp - 0x78]
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x58], ecx
mov r14d, 0x3a1
mov rdx, qword [rbp - 0x60]
add r14d, 0x38
mov r8, qword [rsp + 0x78]
mov r10d, dword [rsp + 0x58]
mov r11, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
mov rdi, qword [rbp - 0x50]
jmp 0x18004d751
mov eax, dword [rsp + 0x40]
mov rcx, qword [rbp - 0x80]
mov r11, qword [rbp - 0x80]
mov dword [rsp + 0x68], eax
mov rax, qword [rbp - 0x80]
mov qword [rbp - 0x68], rax
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x50], r11
mov r9, qword [rbp - 0x80]
mov r14d, r13d
mov r8, qword [rbp - 0x80]
mov r10d, dword [rsp + 0x40]
mov esi, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
movzx r13d, byte [rbp - 0x78]
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x78], r8
mov dword [rsp + 0x58], r10d
mov eax, dword [rbp - 0x40]
add eax, 0x3f0
cmp r14d, eax
jae case.0x18004d2e4.2
cmp r14d, 0x251
ja 0x18004dc0e
je 0x18004dc00
cmp r14d, 0x139
ja 0x18004d9fe
je 0x18004d9e2
mov eax, r14d
sub eax, 0x59
je 0x18004d8fb
sub eax, 0x38
je 0x18004d8b0
sub eax, 0x38
je 0x18004d7c0
cmp eax, 0x38
jne 0x18004d6d8
test ebx, ebx
jne 0x18004d6d2
mov r9, rdi
mov qword [rsp + 0x60], rdi
jmp 0x18004d6d8
test rcx, rcx
jne 0x18004d873
mov ebx, 0x6a
nop
mov eax, ebx
sub eax, 0x6a
je 0x18004d828
sub eax, 1
je 0x18004d813
cmp eax, 1
jne 0x18004d863
mov rax, qword [r12]
lea r9, [rsp + 0x70]
xor edx, edx
mov dword [rsp + 0x70], r15d
lea r8, [rbp - 0x28]
mov rcx, qword [rax + 8]
mov qword [rbp - 0x28], rcx
lea ecx, [rdx + 9]
call fcn.180062890
mov rcx, rax
mov qword [rsp + 0x48], rax
jmp 0x18004d868
test r13b, r13b
je 0x18004d863
movzx ecx, r13b
mov eax, 0xffffffff
shl eax, cl
and r15d, eax
jmp 0x18004d863
mov rcx, qword [r12]
lea r8, [rbp - 0x20]
mov edx, 0x124
mov eax, dword [rcx + 0x10]
mov dword [rbp - 0x18], eax
mov rax, qword [rcx + 8]
lea rcx, [rbp - 0x18]
mov qword [rbp - 0x20], rax
call fcn.18004f710
mov rcx, qword [r12]
mov r15d, eax
mov rdx, qword [rcx + 8]
mov rcx, qword [rdx + 0x20]
movzx r13d, byte [rcx + 0x174]
mov rcx, qword [rsp + 0x48]
inc ebx
cmp ebx, 0x6d
jb 0x18004d7d0
mov qword [rsp + 0x70], rcx
lea r9, [rsp + 0x70]
mov rcx, qword [r12]
lea rdx, [rbp - 0x10]
mov r8d, 0xf1
mov rax, qword [rcx + 8]
mov rcx, rdi
mov qword [rbp - 0x10], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x20], rax
call fcn.1800ceb80
mov ebx, eax
mov r9, qword [rsp + 0x60]
jmp 0x18004d6d8
mov rax, qword [r12]
mov rcx, qword [rax + 8]
mov ecx, dword [rcx + 0x28]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rbp - 0x50], rax
test rax, rax
jne 0x18004d8a6
mov ecx, 0x14
nop
cmp ecx, 0x14
je 0x18004d8e4
cmp ecx, 0x48
jne 0x18004d8e9
mov r9, qword [rsp + 0x60]
jmp 0x18004d6d2
mov ebx, 0xc
add ecx, 0x34
cmp ecx, 0x7c
jb 0x18004d8d0
mov r9, qword [rsp + 0x60]
jmp 0x18004d6d8
mov rax, qword [r12]
cmp dword [rax + 0xa4], 0
jne 0x18004d9ad
mov edi, 0xaa
cmp edi, 0xaa
je 0x18004d987
cmp edi, 0x66ee
je 0x18004d956
cmp edi, 0xcd32
jne 0x18004d994
test ebx, ebx
jne 0x18004d8da
mov rax, qword [r12]
xor edx, edx
mov rcx, qword [rbp - 0x48]
mov eax, dword [rax + 0xa8]
add eax, 2
cdqe
lea r8, [rax + rax*2]
shl r8, 4
call sub.VCRUNTIME140.dll_memset
mov r11, qword [rsp + 0x50]
jmp 0x18004d994
mov rax, qword [r12]
lea r8, [rbp - 0x48]
mov edx, 0xf
mov ecx, dword [rax + 0xa8]
add ecx, 2
lea eax, [rcx + rcx*2]
shl eax, 4
lea rcx, [rbp - 0x38]
mov dword [rbp - 0x38], eax
call fcn.180061970
mov r11, qword [rsp + 0x50]
mov ebx, eax
jmp 0x18004d994
movzx esi, word [r11 + 2]
mov dword [rsp + 0x40], 1
add edi, 0x6644
cmp edi, 0x132cc
jbe 0x18004d911
mov r9, qword [rsp + 0x60]
jmp 0x18004d9b4
movzx esi, word [r11 + 2]
shr esi, 1
test esi, esi
jne 0x18004d6d8
mov ecx, 0xb
mov eax, ecx
sub eax, 0xa
je 0x18004d6d2
cmp eax, 1
jne 0x18004d9d6
mov ebx, 0x7f2bb783
dec ecx
cmp ecx, 9
ja 0x18004d9c1
jmp 0x18004d6d8
movsd xmm0, qword [r11]
movsd qword [r9], xmm0
mov eax, dword [r11 + 8]
mov dword [r9 + 8], eax
mov word [r9 + 2], si
jmp 0x18004d6d8
mov eax, r14d
sub eax, 0x171
je 0x18004dba8
sub eax, 0x38
je 0x18004db46
sub eax, 0x38
je 0x18004dc42
cmp eax, 0x38
jne 0x18004d6d8
mov rax, qword [r12]
cmp dword [rax + 0xa4], 0
jne 0x18004db1c
mov edi, 0x8c
nop dword [rax]
cmp edi, 0x22d
ja 0x18004dac2
je 0x18004dab9
cmp edi, 0x8c
je 0x18004da8f
cmp edi, 0x117
je 0x18004da7e
cmp edi, 0x1a2
jne 0x18004db00
mov rax, qword [r12]
mov qword [rbp - 0x48], rdx
mov rdx, qword [rax + 0xb0]
mov qword [rbp - 0x60], rdx
jmp 0x18004db00
mov rcx, qword [r12]
mov rax, qword [rbp - 0x48]
mov qword [rcx + 0xb0], rax
jmp 0x18004db00
mov rax, qword [r12]
mov rcx, qword [rbp - 0x48]
mov eax, dword [rax + 0xa8]
inc eax
cdqe
lea r8, [rax + rax*2]
shl r8, 4
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rbp - 0x60]
mov r11, qword [rsp + 0x50]
jmp 0x18004db00
mov dword [rdx + 8], 1
jmp 0x18004db00
cmp edi, 0x2b8
je 0x18004daf8
cmp edi, 0x343
je 0x18004daec
cmp edi, 0x3ce
jne 0x18004db00
mov rax, qword [r12]
movzx ecx, word [rax + 0xa8]
mov word [r11 + 6], cx
jmp 0x18004db00
mov rax, qword [r12]
inc dword [rax + 0xa8]
jmp 0x18004db00
mov eax, dword [rdx + 0xc]
dec eax
mov dword [rdx + 0x10], eax
add edi, 0x8b
cmp edi, 0x459
jb 0x18004da40
mov r9, qword [rsp + 0x60]
jmp 0x18004d6d8
mov ecx, 0xc6
mov eax, ecx
sub eax, 0xc6
je 0x18004db34
cmp eax, 1
jne 0x18004db37
sub dword [rdx + 0x10], esi
jmp 0x18004db37
sub dword [rdx + 8], esi
inc ecx
cmp ecx, 0xc8
jb 0x18004db21
jmp 0x18004d6d8
mov eax, dword [r9 + 0xc]
lea r8, [rbp - 0x70]
mov qword [rsp + 0x78], rax
lea r9, [rsp + 0x70]
mov rax, qword [rbp - 0x80]
mov rdx, rdi
mov qword [rbp - 0x30], rax
mov rax, qword [r12]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0xce
mov dword [rsp + 0x70], 1
mov rcx, qword [rax + 8]
mov rax, qword [rcx + 8]
xor ecx, ecx
mov qword [rbp - 0x70], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
call fcn.1800c78e0
mov r9, qword [rsp + 0x60]
mov ebx, eax
jmp 0x18004d6d8
mov rax, qword [r12]
mov rcx, qword [rax + 8]
movabs rax, 0xaaaaaaaaaaaaaaab
mov edx, dword [rcx + 0x28]
sub rdx, 0xc
mul rdx
movsxd rax, esi
shr rdx, 3
mov word [r9 + 4], dx
lea r8, [rax + rax*2]
movzx eax, word [r11 + 2]
sub eax, esi
shl r8, 2
movsxd rcx, eax
inc rcx
lea rax, [rcx + rcx*2]
lea rdx, [r11 + rax*4]
lea rcx, [r9 + 0xc]
call sub.VCRUNTIME140.dll_memcpy
mov r9, qword [rsp + 0x60]
jmp 0x18004d6d8
movzx eax, word [rdx + 8]
mov word [r11 + 2], ax
jmp 0x18004d6d8
cmp r14d, 0x369
ja 0x18004df87
je 0x18004df25
mov eax, r14d
sub eax, 0x289
je 0x18004def7
sub eax, 0x38
je 0x18004dc94
sub eax, 0x38
je 0x18004dc4f
cmp eax, 0x38
jne 0x18004d6d8
test ebx, ebx
jne 0x18004d6d2
jmp 0x18004d6d8
mov rax, qword [rbp - 0x68]
lea r8, [rbp - 0x30]
mov qword [rbp - 0x30], rax
lea rdx, [rsp + 0x70]
mov eax, dword [rsp + 0x68]
lea rcx, [rbp + 8]
mov dword [rsp + 0x70], eax
mov r9d, 0x4a
mov rax, qword [r12]
mov qword [rbp - 0x70], rax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x20], rax
call fcn.180079ae0
mov r9, qword [rsp + 0x60]
mov ebx, dword [rax]
jmp 0x18004d6d8
test ebx, ebx
jne 0x18004d6d2
cmp dword [rsp + 0x40], ebx
je 0x18004dda6
mov edi, 0xde
nop dword [rax + rax]
mov eax, edi
sub eax, 0xde
je 0x18004dd47
sub eax, 1
je 0x18004dd39
sub eax, 1
je 0x18004dd1b
sub eax, 1
je 0x18004dce2
cmp eax, 1
jne 0x18004dd8e
test ebx, ebx
jne 0x18004d8da
jmp 0x18004dd8e
mov rax, qword [r12]
lea rdx, [rbp + 0x48]
mov qword [rbp - 0x70], rax
xor r9d, r9d
lea rax, [rsp + 0x70]
mov dword [rsp + 0x70], 0
mov qword [rsp + 0x28], rax
xor r8d, r8d
lea rax, [rbp - 0x70]
mov ecx, 0x83
mov qword [rsp + 0x20], rax
call fcn.180053f30
jmp 0x18004dd87
mov rax, qword [rbp - 0x80]
mov qword [rbp + 0x48], rax
mov rax, qword [r12]
mov rcx, qword [rax + 0xb0]
mov eax, dword [rcx + 0x20]
sub eax, dword [rbp + 0x50]
mov dword [rbp + 0x58], eax
jmp 0x18004dd8e
test ebx, ebx
jne 0x18004d8da
mov qword [rbp + 0x50], r8
jmp 0x18004dd8e
mov rax, qword [r12]
lea rcx, [rsp + 0x70]
mov qword [rbp - 0x70], rax
xor r9d, r9d
lea rax, [rbp + 0x48]
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rax
xor edx, edx
lea rax, [rbp - 0x70]
mov dword [rsp + 0x70], 3
mov r8d, 0xec
mov qword [rsp + 0x20], rax
call fcn.1800bfec0
mov r8, qword [rsp + 0x78]
mov ebx, eax
inc edi
cmp edi, 0xe3
jb 0x18004dcb0
mov r9, qword [rsp + 0x60]
jmp 0x18004d6d8
xor edi, edi
nop dword [rax + rax]
cmp edi, 0xf6
ja case.0x18004ddd5.1
lea rdx, [0x180000000]
movzx eax, byte [rdx + rdi + 0x4e0b0]
mov ecx, dword [rdx + rax*4 + 0x4e090]
add rcx, rdx
jmp rcx
mov rax, qword [r12]
lea rdx, [rbp + 0x48]
mov qword [rbp - 0x70], rax
xor r9d, r9d
lea rax, [rsp + 0x70]
mov dword [rsp + 0x70], 0
mov qword [rsp + 0x28], rax
xor r8d, r8d
lea rax, [rbp - 0x70]
mov ecx, 0x83
mov qword [rsp + 0x20], rax
call fcn.180053f30
mov ebx, eax
test eax, eax
jne 0x18004d8da
mov r8, qword [rsp + 0x78]
mov r10d, dword [rsp + 0x58]
jmp case.0x18004ddd5.1
test ebx, ebx
jne 0x18004d8da
jmp case.0x18004ddd5.1
mov qword [rbp + 0x50], r8
jmp case.0x18004ddd5.1
mov rax, qword [r12]
lea r9, [rbp - 0x70]
lea r8, [rbp + 0x48]
mov qword [rbp - 0x70], rax
mov edx, 0xe4
mov dword [rbp + 0x58], r10d
lea rcx, [rsp + 0x70]
mov dword [rsp + 0x70], 1
call fcn.180052bc0
mov r8, qword [rsp + 0x78]
mov ebx, eax
mov r10d, dword [rsp + 0x58]
jmp case.0x18004ddd5.1
sub dword [rbp + 0x58], r10d
jmp case.0x18004ddd5.1
mov rax, qword [r12]
lea rcx, [rsp + 0x70]
mov qword [rbp - 0x70], rax
xor r9d, r9d
lea rax, [rbp + 0x48]
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rax
xor edx, edx
lea rax, [rbp - 0x70]
mov dword [rsp + 0x70], 0xb
mov r8d, 0xec
mov qword [rsp + 0x20], rax
call fcn.1800bfec0
mov r8, qword [rsp + 0x78]
mov ebx, eax
mov r10d, r8d
sub r10d, dword [rbp + 0x50]
mov dword [rsp + 0x58], r10d
jmp case.0x18004ddd5.1
mov rax, qword [rbp - 0x80]
mov qword [rbp + 0x48], rax
add edi, 0x29
lea eax, [rdi + 0xfc]
cmp eax, 0x21b
jb 0x18004ddb0
mov r9, qword [rsp + 0x60]
jmp 0x18004d6d8
mov rax, qword [r12]
lea r8, [rbp - 0x70]
xor edx, edx
mov qword [rbp - 0x70], rax
xor r9d, r9d
mov qword [rsp + 0x20], 0
lea ecx, [rdx + 0x6e]
call fcn.1800c14e0
mov r9, qword [rsp + 0x60]
mov ebx, eax
jmp 0x18004d6d8
mov rax, qword [r12]
xor r9d, r9d
mov rdx, qword [rax + 8]
mov r8, qword [rax + 0x18]
mov eax, 1
mov ecx, dword [rdx + 0xb8]
shl eax, cl
imul eax, dword [rdx + 0x28]
shr eax, 9
add dword [r8 + 0x1c], eax
lea r8, [rbp - 8]
mov rcx, qword [r12]
mov rdx, qword [rcx + 0x18]
mov eax, dword [rcx + 0x10]
mov dword [rsp + 0x70], eax
mov rax, qword [rcx + 8]
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x20], rdx
mov edx, 0x111
mov qword [rbp - 8], rax
call fcn.180084c90
mov r9, qword [rsp + 0x60]
mov ebx, eax
jmp 0x18004d6d8
mov eax, r14d
sub eax, 0x3a1
je 0x18004d6d2
sub eax, 0x38
je 0x18004dfd7
cmp eax, 0x38
jne 0x18004d6d8
mov dword [rbp - 0x58], ebx
mov rax, qword [rbp - 0x58]
mov rcx, qword [rbp + 0x60]
xor rcx, rsp
call fcn.1800d1090
lea r11, [rsp + 0x170]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
cmp qword [rbp - 0x48], 0
je 0x18004dff2
mov r9d, 0xe6
lea rdx, [rbp - 0x48]
xor r8d, r8d
xor ecx, ecx
call fcn.18008d780
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov r9, qword [rsp + 0x60]
jmp 0x18004d6d8