Function at 0x10003e7b0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov qword [rsp + 8], rcx
mov rax, rsp
sub rsp, 0x138
mov qword [rsp + 0xf0], 0xfffffffffffffffe
mov qword [rax + 0x20], rbx
mov qword [rax - 8], rbp
mov qword [rax - 0x10], rsi
mov qword [rax - 0x18], rdi
mov qword [rax - 0x20], r12
mov qword [rax - 0x28], r13
mov qword [rax - 0x30], r14
mov qword [rax - 0x38], r15
mov r9, rdx
mov r10, rcx
xor esi, esi
mov r14d, esi
mov dword [rsp + 0x34], esi
mov r15d, esi
mov dword [rsp + 0x30], esi
mov eax, dword [0x1000a8cec]
lea r13d, [rsi - 1]
test eax, eax
jne 0x10003f9b3
test rdx, rdx
je 0x10003e829
mov rdx, r8
lea ecx, [rsi + 1]
call r9
mov r10, qword [rsp + 0x140]
mov r12d, esi
mov ebx, 2
mov edx, dword [0x1000a8cd8]
test edx, edx
cmovne r12d, ebx
mov r8d, dword [0x1000a8cc8]
test r8d, r8d
je 0x10003e84d
or r12d, 8
mov ecx, dword [0x1000a8cdc]
test ecx, ecx
je 0x10003e85b
or r12d, 0x10
mov rax, qword [r10]
mov rbp, qword [rax + 0x10]
test rbp, rbp
je 0x10003ebeb
nop
nop
mov rbx, qword [rbp + 0x10]
mov rbp, qword [rbp]
test rbx, rbx
je 0x10003e881
lock inc dword [rbx + 8]
mov qword [rsp + 0x78], rbx
mov dword [rbx + 0x28], 1
mov dword [rbx + 0x2c], esi
mov dword [rbx + 0x30], esi
mov edi, esi
mov r8, qword [rbx + 0x10]
lea rdx, [0x100007418]
mov ecx, 1
call fcn.1000193f0
mov edx, r12d
mov rcx, qword [rbx + 0x10]
call qword [0x1000131a0]
test eax, eax
je 0x10003e960
nop
cmp eax, 0xb7
je 0x10003e98c
cmp eax, 1
je 0x10003e9b7
cmp eax, 0x800b0100
je 0x10003ea09
cmp eax, 0x800b0101
je 0x10003ea19
cmp eax, 0x800b0110
je 0x10003ea29
cmp eax, 0x103
je 0x10003ea59
cmp eax, 0xe000020b
je 0x10003ea59
cmp eax, 0xe0000301
je 0x10003ea59
cmp eax, 0x20
jne 0x10003ea49
inc edi
cmp edi, 0x10
ja 0x10003ea39
mov eax, dword [0x1000a8cec]
test eax, eax
jne 0x10003ead1
mov r8, qword [rbx + 0x10]
lea rdx, [0x100007418]
lea ecx, [rax + 1]
call fcn.1000193f0
mov edx, r12d
mov rcx, qword [rbx + 0x10]
call qword [0x1000131a0]
test eax, eax
jne 0x10003e8c0
mov eax, 2
mov dword [rbx + 0x2c], eax
lea rdx, [rbx + 0x18]
lea rcx, [rbx + 0x10]
call fcn.100036a00
inc r15d
mov dword [rsp + 0x30], r15d
mov rcx, qword [rsp + 0x140]
xor esi, esi
jmp 0x10003ea7f
lea rdx, [rbx + 0x18]
lea rcx, [rbx + 0x10]
call fcn.100036a00
mov dword [rbx + 0x2c], 1
inc r15d
mov dword [rsp + 0x30], r15d
mov rcx, qword [rsp + 0x140]
xor esi, esi
jmp 0x10003ea7f
lea rdx, [rbx + 0x18]
lea rcx, [rbx + 0x10]
call fcn.100036a00
mov r11d, eax
test eax, eax
jne 0x10003e9e9
mov dword [rbx + 0x2c], 1
inc r15d
mov dword [rsp + 0x30], r15d
mov rcx, qword [rsp + 0x140]
xor esi, esi
jmp 0x10003ea7f
xor esi, esi
mov eax, esi
cmp r11d, 0xe0000302
mov ecx, 4
cmove eax, ecx
mov dword [rbx + 0x2c], eax
mov rcx, qword [rsp + 0x140]
jmp 0x10003ea7f
mov dword [rbx + 0x2c], 3
mov dword [rbx + 0x28], 6
jmp 0x10003ea68
mov dword [rbx + 0x2c], 3
mov dword [rbx + 0x28], 7
jmp 0x10003ea68
mov dword [rbx + 0x28], 8
mov dword [rbx + 0x2c], 3
jmp 0x10003ea68
mov dword [rbx + 0x28], 9
mov dword [rbx + 0x2c], 3
jmp 0x10003ea68
mov dword [rbx + 0x28], 9
mov dword [rbx + 0x2c], 3
jmp 0x10003ea68
mov eax, 4
mov dword [rbx + 0x28], eax
mov dword [rbx + 0x2c], 3
mov rcx, qword [rsp + 0x140]
mov rax, qword [rcx]
cmp dword [rax + 0x40], 0
jne 0x10003eb37
xor esi, esi
mov eax, dword [0x1000a8cec]
test eax, eax
jne 0x10003eb92
lock dec dword [rbx + 8]
jne 0x10003eaa0
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax]
mov qword [rsp + 0x78], rsi
test rbp, rbp
jne 0x10003e870
mov edx, dword [0x1000a8cd8]
mov r8d, dword [0x1000a8cc8]
mov ecx, dword [0x1000a8cdc]
mov r10, qword [rsp + 0x140]
lea ebx, [rbp + 2]
jmp 0x10003ebeb
lea rax, [rsp + 0xb8]
mov qword [rsp + 0x98], rax
mov rbp, qword [rsp + 0x140]
mov rax, qword [rbp]
test rax, rax
je 0x10003eaf6
lock inc dword [rax + 8]
mov qword [rsp + 0xb8], rax
lea rcx, [rsp + 0xb8]
call fcn.100034f00
mov r14d, eax
test rbx, rbx
je 0x10003f9c7
lock dec dword [rbx + 8]
jne 0x10003eb2b
mov r8, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [r8]
xor esi, esi
mov qword [rsp + 0x78], rsi
jmp 0x10003f9c9
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x98], rax
mov rax, qword [rcx]
test rax, rax
je 0x10003eb53
lock inc dword [rax + 8]
mov qword [rsp + 0xc0], rax
lea rcx, [rsp + 0xc0]
call fcn.100034f00
mov r14d, eax
lock dec dword [rbx + 8]
jne 0x10003eb7e
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax]
xor esi, esi
mov qword [rsp + 0x78], rsi
mov rbp, qword [rsp + 0x140]
jmp 0x10003f9c9
lea rax, [rsp + 0xd8]
mov qword [rsp + 0x98], rax
mov rax, qword [rcx]
test rax, rax
je 0x10003ebae
lock inc dword [rax + 8]
mov qword [rsp + 0xd8], rax
lea rcx, [rsp + 0xd8]
call fcn.100034f00
mov r14d, eax
lock dec dword [rbx + 8]
jne 0x10003ebd9
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax]
mov qword [rsp + 0x78], rsi
mov rbp, qword [rsp + 0x140]
jmp 0x10003f9c9
test edx, edx
cmovne r12d, ebx
mov dword [rsp + 0x48], r12d
test r8d, r8d
je 0x10003ec04
or r12d, 8
mov dword [rsp + 0x48], r12d
test ecx, ecx
je 0x10003ec11
or r12d, 0x10
mov dword [rsp + 0x48], r12d
mov dword [rsp + 0x3c], esi
mov rax, qword [r10]
mov rdi, qword [rax + 0x10]
test rdi, rdi
je 0x10003f85d
nop
nop
nop
mov rbx, qword [rdi + 0x10]
mov rdi, qword [rdi]
mov qword [rsp + 0x98], rdi
mov qword [rsp + 0x50], rbx
test rbx, rbx
je 0x10003ec4d
lock inc dword [rbx + 8]
mov qword [rsp + 0x70], rbx
cmp dword [rbx + 0x28], 1
jne 0x10003f6de
mov eax, dword [rbx + 0x2c]
cmp eax, 1
je 0x10003ec72
cmp eax, 2
je 0x10003ec72
cmp eax, 4
jne 0x10003f6de
mov edi, esi
mov dword [rsp + 0x38], esi
mov dword [rsp + 0x58], esi
lea r15, [rbx + 0x10]
mov qword [rsp + 0x40], r15
nop
nop
nop
lea r9, [rsp + 0x3c]
xor r8d, r8d
mov edx, r12d
mov rcx, qword [r15]
call qword [0x100013198]
mov dword [rsp + 0x68], eax
cmp eax, 0x103
jne 0x10003f4ca
cmp dword [0x1000a8178], 0
je 0x10003f47f
cmp dword [0x1000a8cd0], 0
je 0x10003f47f
lea rcx, [0x1000a9318]
mov rdx, qword [0x1000a9318]
call qword [rdx + 0x18]
lea rbp, [rax + 0x18]
mov qword [rsp + 0x90], rbp
lea rcx, [0x1000a9318]
mov rax, qword [0x1000a9318]
call qword [rax + 0x18]
lea rsi, [rax + 0x18]
mov qword [rsp + 0x60], rsi
lea rcx, [0x1000a9318]
mov rax, qword [0x1000a9318]
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rsp + 0x88], rdi
lea rcx, [0x1000a9318]
mov rax, qword [0x1000a9318]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0xa0], rax
xor ebx, ebx
xor edx, edx
lea rcx, [0x1000a92a0]
call fcn.100047064
mov r13, rax
lea r14d, [rbx + 1]
test rax, rax
je 0x10003ef03
nop
test rbx, rbx
jne 0x10003ef03
xor r9d, r9d
lea edx, [rbx + 6]
mov r8d, 0x13d
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_FindResourceExW]
mov r12, rax
test rax, rax
jne 0x10003ed8b
mov rbx, rax
jmp 0x10003edf8
mov rdx, rax
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
jne 0x10003eda1
mov rbx, rax
jmp 0x10003edf3
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rbx, rax
test rax, rax
je 0x10003edf3
mov rdx, r12
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov edx, eax
add rdx, rbx
mov ecx, 0xe
cmp rbx, rdx
jae 0x10003eddf
movzx eax, word [rbx]
lea rbx, [rbx + rax*2 + 2]
add ecx, 0xffffffff
jne 0x10003edc8
cmp rbx, rdx
jb 0x10003ede6
xor eax, eax
mov rbx, rax
jmp 0x10003edf3
cmp word [rbx], 0
mov eax, 0
cmove rbx, rax
test rbx, rbx
jne 0x10003ee1b
mov edx, r14d
lea rcx, [0x1000a92a0]
call fcn.100047064
mov r13, rax
inc r14d
test rax, rax
jne 0x10003ed60
jmp 0x10003ef03
test r13, r13
je 0x10003ef03
mov edx, 0x13d
mov r8d, 6
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r12, rax
test rax, rax
je 0x10003ef03
mov rdx, rax
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
je 0x10003ef03
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rbx, rax
test rax, rax
je 0x10003ef03
mov rdx, r12
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov edx, eax
add rdx, rbx
mov ecx, 0xe
cmp rbx, rdx
jae 0x10003ef03
movzx eax, word [rbx]
lea rbx, [rbx + rax*2 + 2]
add ecx, 0xffffffff
jne 0x10003ee84
cmp rbx, rdx
jae 0x10003ef03
movzx eax, word [rbx]
test ax, ax
je 0x10003ef03
movzx r12d, ax
mov ecx, 1
sub ecx, dword [rbp - 8]
mov eax, dword [rbp - 0xc]
sub eax, r12d
or eax, ecx
jge 0x10003eed1
mov edx, r12d
lea rcx, [rsp + 0x90]
call fcn.1000140c0
mov rbp, qword [rsp + 0x90]
lea r13, [r12 + r12]
lea rdx, [rbx + 2]
mov r8, r13
mov rcx, rbp
call sub.msvcrt.dll_memcpy
test r12d, r12d
js 0x10003f72e
cmp r12d, dword [rbp - 0xc]
jg 0x10003f72e
mov dword [rbp - 0x10], r12d
mov word [r13 + rbp], 0
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x80], rax
mov rbx, qword [r15]
mov rcx, qword [rbx - 0x18]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
cmp dword [rbx - 8], 0
jl 0x10003ef4e
cmp rax, qword [rbx - 0x18]
jne 0x10003ef4e
lea r12, [rbx - 0x18]
lock inc dword [rbx - 8]
mov rbp, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x88]
jmp 0x10003ef85
mov rax, qword [rax]
mov r8d, 2
mov edx, dword [rbx - 0x10]
call qword [rax]
mov r12, rax
test rax, rax
je 0x10003f712
mov ecx, dword [rbx - 0x10]
mov dword [rax + 8], ecx
mov ecx, dword [rbx - 0x10]
inc ecx
movsxd r8, ecx
add r8, r8
mov rdx, rbx
lea rcx, [rax + 0x18]
call sub.msvcrt.dll_memcpy
lea rax, [r12 + 0x18]
mov qword [rsp + 0xd0], rax
xor r12d, r12d
mov qword [rsp + 0x20], r12
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0xd0]
call fcn.100036ea0
mov rbx, qword [rsp + 0xa0]
test eax, eax
je 0x10003f1be
xor edx, edx
lea rcx, [0x1000a92a0]
call fcn.100047064
mov r14, rax
lea r15d, [r12 + 1]
test rax, rax
je 0x10003f363
test r12, r12
jne 0x10003f36a
xor r9d, r9d
lea edx, [r12 + 6]
mov r8d, 0x13d
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FindResourceExW]
mov r13, rax
test rax, rax
jne 0x10003f011
mov r12, rax
jmp 0x10003f084
mov rdx, rax
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
jne 0x10003f027
mov r12, rax
jmp 0x10003f07f
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov r12, rax
test rax, rax
je 0x10003f07f
mov rdx, r13
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov edx, eax
add rdx, r12
mov ecx, 0xf
nop
cmp r12, rdx
jae 0x10003f069
movzx eax, word [r12]
lea r12, [r12 + rax*2 + 2]
add ecx, 0xffffffff
jne 0x10003f050
cmp r12, rdx
jb 0x10003f070
xor eax, eax
mov r12, rax
jmp 0x10003f07f
cmp word [r12], 0
mov eax, 0
cmove r12, rax
test r12, r12
jne 0x10003f0ac
mov edx, r15d
lea rcx, [0x1000a92a0]
call fcn.100047064
mov r14, rax
inc r15d
test rax, rax
jne 0x10003efe4
mov r15, qword [rsp + 0x40]
jmp 0x10003f392
test r14, r14
je 0x10003f35c
mov edx, 0x13d
mov r8d, 6
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r13, rax
test rax, rax
je 0x10003f38d
mov rdx, rax
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
je 0x10003f386
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov r12, rax
test rax, rax
je 0x10003f37f
mov rdx, r13
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov edx, eax
add rdx, r12
mov ecx, 0xf
cmp r12, rdx
jae 0x10003f378
movzx eax, word [r12]
lea r12, [r12 + rax*2 + 2]
add ecx, 0xffffffff
jne 0x10003f115
cmp r12, rdx
jae 0x10003f355
movzx eax, word [r12]
test ax, ax
je 0x10003f371
movzx esi, ax
mov ecx, 1
sub ecx, dword [rdi - 8]
mov eax, dword [rdi - 0xc]
sub eax, esi
or eax, ecx
jge 0x10003f16f
mov edx, esi
lea rcx, [rsp + 0x88]
call fcn.1000140c0
mov rdi, qword [rsp + 0x88]
lea r13, [rsi + rsi]
lea rdx, [r12 + 2]
mov r8, r13
mov rcx, rdi
call sub.msvcrt.dll_memcpy
test esi, esi
js 0x10003f718
cmp esi, dword [rdi - 0xc]
jg 0x10003f718
mov dword [rdi - 0x10], esi
mov word [r13 + rdi], 0
mov r8, rbx
mov rdx, rdi
lea rcx, [rsp + 0x60]
call fcn.10003ac80
mov rsi, qword [rsp + 0x60]
mov r15, qword [rsp + 0x40]
jmp 0x10003f392
mov rdi, r12
xor edx, edx
lea rcx, [0x1000a92a0]
call fcn.100047064
mov r12, rax
mov r14d, 1
test rax, rax
je 0x10003f392
test rdi, rdi
jne 0x10003f392
xor r9d, r9d
lea edx, [rdi + 6]
mov r8d, 0x13e
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_FindResourceExW]
mov r13, rax
test rax, rax
jne 0x10003f20c
mov rdi, rax
jmp 0x10003f262
mov rdx, rax
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
jne 0x10003f222
mov rdi, rax
jmp 0x10003f25d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rdi, rax
test rax, rax
je 0x10003f25d
mov rdx, r13
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov ecx, eax
add rcx, rdi
cmp rdi, rcx
jb 0x10003f250
xor eax, eax
mov rdi, rax
jmp 0x10003f25d
cmp word [rdi], 0
mov eax, 0
cmove rdi, rax
test rdi, rdi
jne 0x10003f285
mov edx, r14d
lea rcx, [0x1000a92a0]
call fcn.100047064
mov r12, rax
inc r14d
test rax, rax
jne 0x10003f1e1
jmp 0x10003f392
test r12, r12
je 0x10003f392
mov edx, 0x13e
mov r8d, 6
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rdi, rax
test rax, rax
je 0x10003f392
mov rdx, rax
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
je 0x10003f392
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov r13, rax
test rax, rax
je 0x10003f392
mov rdx, rdi
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov ecx, eax
add rcx, r13
cmp r13, rcx
jae 0x10003f392
movzx eax, word [r13]
test ax, ax
je 0x10003f392
movzx edi, ax
mov ecx, 1
sub ecx, dword [rsi - 8]
mov eax, dword [rsi - 0xc]
sub eax, edi
or eax, ecx
jge 0x10003f325
mov edx, edi
lea rcx, [rsp + 0x60]
call fcn.1000140c0
mov rsi, qword [rsp + 0x60]
lea r12, [rdi + rdi]
lea rdx, [r13 + 2]
mov r8, r12
mov rcx, rsi
call sub.msvcrt.dll_memcpy
test edi, edi
js 0x10003f723
cmp edi, dword [rsi - 0xc]
jg 0x10003f723
mov dword [rsi - 0x10], edi
mov word [r12 + rsi], 0
jmp 0x10003f392
mov r15, qword [rsp + 0x40]
jmp 0x10003f392
mov r15, qword [rsp + 0x40]
jmp 0x10003f392
mov r15, qword [rsp + 0x40]
jmp 0x10003f392
mov r15, qword [rsp + 0x40]
jmp 0x10003f392
mov r15, qword [rsp + 0x40]
jmp 0x10003f392
mov r15, qword [rsp + 0x40]
jmp 0x10003f392
mov r15, qword [rsp + 0x40]
jmp 0x10003f392
mov r15, qword [rsp + 0x40]
jmp 0x10003f392
mov r15, qword [rsp + 0x40]
cmp dword [rsi - 0x10], 0
je 0x10003f3d1
cmp dword [rbp - 0x10], 0
je 0x10003f3d7
mov r9d, 0x24
mov r8, rbp
mov rdx, rsi
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
jne 0x10003f3dd
lea rdx, [0x100007380]
lea ecx, [rax - 5]
call fcn.1000193f0
mov edi, 1
mov dword [rsp + 0x38], edi
jmp 0x10003f3e1
mov edi, dword [rsp + 0x38]
jmp 0x10003f3e1
mov edi, dword [rsp + 0x38]
jmp 0x10003f3e1
mov edi, dword [rsp + 0x38]
lea rdx, [rbx - 0x18]
mov r13d, 0xffffffff
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x10003f403
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x88]
add rdx, 0xffffffffffffffe8
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x10003f427
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x10003f448
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x90]
add rdx, 0xffffffffffffffe8
mov eax, r13d
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x10003f493
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov eax, dword [rsp + 0x68]
mov r12d, dword [rsp + 0x48]
mov esi, dword [rsp + 0x58]
mov r14d, dword [rsp + 0x34]
jmp 0x10003f4a5
cmp dword [0x1000a8ccc], 0
je 0x10003f4a5
mov edi, 1
mov dword [rsp + 0x38], edi
jmp 0x10003f4a9
mov eax, dword [rsp + 0x68]
mov r12d, dword [rsp + 0x48]
mov esi, dword [rsp + 0x58]
mov r14d, dword [rsp + 0x34]
test edi, edi
je 0x10003f4ca
or r12d, 4
lea r9, [rsp + 0x3c]
xor r8d, r8d
mov edx, r12d
mov rcx, qword [r15]
call qword [0x100013198]
and r12d, 0xfffffffb
mov dword [rsp + 0x48], r12d
or r14d, dword [rsp + 0x3c]
mov dword [rsp + 0x34], r14d
test eax, eax
je 0x10003f67d
cmp eax, 0x20
jne 0x10003f503
inc esi
mov dword [rsp + 0x58], esi
cmp esi, 0x10
ja 0x10003f65d
mov eax, dword [0x1000a8cec]
test eax, eax
jne 0x10003f79a
jmp 0x10003ec90
cmp eax, 0x103
je 0x10003f62f
cmp eax, 0xe000020b
je 0x10003f5fa
cmp eax, 0xe0000301
je 0x10003f5c5
cmp eax, 0x800b0110
je 0x10003f540
mov rbx, qword [rsp + 0x50]
mov dword [rbx + 0x28], 9
mov dword [rbx + 0x30], 3
jmp 0x10003f553
mov rbx, qword [rsp + 0x50]
mov dword [rbx + 0x28], 8
mov dword [rbx + 0x30], 3
mov r10, qword [rsp + 0x140]
mov rax, qword [r10]
cmp dword [rax + 0x40], 0
jne 0x10003f739
cmp dword [rbx + 0x2c], 2
jne 0x10003f6c6
xor esi, esi
mov edx, esi
cmp dword [0x1000a8cd8], esi
mov ebp, 2
cmovne edx, ebp
cmp dword [0x1000a8cf0], esi
je 0x10003f58f
or edx, 0x20
lea r9, [rsp + 0x3c]
xor r8d, r8d
mov rcx, qword [r15]
call qword [0x100013150]
test eax, eax
jne 0x10003f5ae
mov dword [rbx + 0x2c], 3
mov dword [rbx + 0x30], ebp
or r14d, dword [rsp + 0x3c]
mov dword [rsp + 0x34], r14d
mov r10, qword [rsp + 0x140]
jmp 0x10003f6c8
mov rbx, qword [rsp + 0x50]
mov eax, 4
mov dword [rbx + 0x28], eax
mov ebp, 2
mov dword [rbx + 0x30], ebp
mov r8, qword [r15]
lea rdx, [0x100007310]
mov ecx, ebp
call fcn.1000193f0
mov r10, qword [rsp + 0x140]
xor esi, esi
jmp 0x10003f6c8
mov rbx, qword [rsp + 0x50]
mov dword [rbx + 0x28], 3
mov ebp, 2
mov dword [rbx + 0x30], ebp
mov r8, qword [r15]
lea rdx, [0x100007260]
lea ecx, [rbp - 1]
call fcn.1000193f0
mov r10, qword [rsp + 0x140]
xor esi, esi
jmp 0x10003f6c8
mov rbx, qword [rsp + 0x50]
mov ebp, 2
mov dword [rbx + 0x28], ebp
mov dword [rbx + 0x30], ebp
mov r8, qword [r15]
lea rdx, [0x1000071c0]
lea ecx, [rbp - 1]
call fcn.1000193f0
mov r10, qword [rsp + 0x140]
xor esi, esi
jmp 0x10003f6c8
mov rbx, qword [rsp + 0x50]
mov dword [rbx + 0x28], 9
mov ebp, 2
mov dword [rbx + 0x30], ebp
mov r10, qword [rsp + 0x140]
xor esi, esi
jmp 0x10003f6c8
mov rbx, qword [rsp + 0x50]
mov dword [rbx + 0x28], 1
mov dword [rbx + 0x30], 1
cmp dword [rbx + 0x2c], 4
jne 0x10003f6a6
lea rdx, [rbx + 0x18]
mov rcx, r15
call fcn.100036a00
inc dword [rsp + 0x30]
mov r8, qword [r15]
lea rdx, [0x100007170]
mov ecx, 1
call fcn.1000193f0
mov r10, qword [rsp + 0x140]
xor esi, esi
jmp 0x10003f6c8
xor esi, esi
mov eax, dword [0x1000a8cec]
test eax, eax
jne 0x10003f7fe
mov rdi, qword [rsp + 0x98]
mov eax, r13d
lock xadd dword [rbx + 8], eax
dec eax
jne 0x10003f6f7
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax]
mov qword [rsp + 0x70], rsi
test rdi, rdi
jne 0x10003ec30
mov r15d, dword [rsp + 0x30]
lea ebx, [rdi + 2]
jmp 0x10003f85d
call fcn.100013cb0
int3
mov ecx, 0x80070057
call fcn.100013860
int3
mov ecx, 0x80070057
call fcn.100013860
int3
mov ecx, 0x80070057
call fcn.100013860
nop
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x80], rax
mov rax, qword [r10]
test rax, rax
je 0x10003f755
lock inc dword [rax + 8]
mov qword [rsp + 0xe0], rax
lea rcx, [rsp + 0xe0]
call fcn.100034f00
mov r14d, eax
mov eax, r13d
lock xadd dword [rbx + 8], eax
dec eax
jne 0x10003f786
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax]
xor esi, esi
mov qword [rsp + 0x70], rsi
mov rbp, qword [rsp + 0x140]
jmp 0x10003f9c9
lea rax, [rsp + 0xc8]
mov qword [rsp + 0x80], rax
mov rbp, qword [rsp + 0x140]
mov rax, qword [rbp]
test rax, rax
je 0x10003f7bf
lock inc dword [rax + 8]
mov qword [rsp + 0xc8], rax
lea rcx, [rsp + 0xc8]
call fcn.100034f00
mov r14d, eax
mov eax, r13d
mov rcx, qword [rsp + 0x50]
lock xadd dword [rcx + 8], eax
dec eax
jne 0x10003f7f2
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
xor esi, esi
mov qword [rsp + 0x70], rsi
jmp 0x10003f9c9
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x80], rax
mov rax, qword [r10]
test rax, rax
je 0x10003f81a
lock inc dword [rax + 8]
mov qword [rsp + 0xa8], rax
lea rcx, [rsp + 0xa8]
call fcn.100034f00
mov r14d, eax
mov eax, r13d
lock xadd dword [rbx + 8], eax
dec eax
jne 0x10003f84b
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax]
mov qword [rsp + 0x70], rsi
mov rbp, qword [rsp + 0x140]
jmp 0x10003f9c9
test r15d, r15d
je 0x10003f9bd
call fcn.100049bb0
cmp eax, 5
jne 0x10003f88c
lea rdx, [0x1000070c0]
lea ecx, [rax - 4]
call fcn.1000193f0
mov rbp, qword [rsp + 0x140]
jmp 0x10003f9c9
mov rbp, qword [rsp + 0x140]
mov rdi, qword [rbp]
cmp dword [rdi + 0x44], 0
je 0x10003f8f9
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x80], rax
test rdi, rdi
je 0x10003f8b7
lock inc dword [rdi + 8]
mov qword [rsp + 0xb0], rdi
lea rcx, [rsp + 0xb0]
call fcn.10003baf0
test eax, eax
je 0x10003f8e6
lea rdx, [0x100007060]
mov ecx, 1
call fcn.1000193f0
jmp 0x10003f9c9
lea rdx, [0x100006fe0]
mov ecx, ebx
call fcn.1000193f0
jmp 0x10003f9c9
mov rdi, qword [rdi + 0x10]
test rdi, rdi
je 0x10003f9c9
mov r14d, 2
nop
mov rbx, qword [rdi + 0x10]
mov rdi, qword [rdi]
test rbx, rbx
je 0x10003f920
lock inc dword [rbx + 8]
mov qword [rsp + 0xe8], rbx
mov eax, dword [rbx + 0x2c]
cmp eax, 4
jne 0x10003f936
cmp dword [rbx + 0x30], 1
je 0x10003f947
cmp eax, 2
jne 0x10003f982
cmp dword [rbx + 0x30], 3
je 0x10003f982
cmp dword [rbx + 0x34], 0
je 0x10003f982
lea rcx, [rbx + 0x18]
call fcn.10003adc0
test eax, eax
je 0x10003f96d
mov r8, qword [rbx + 0x18]
lea rdx, [0x100006f70]
mov ecx, 1
call fcn.1000193f0
xor esi, esi
jmp 0x10003f982
mov r8, qword [rbx + 0x18]
lea rdx, [0x100006ef0]
mov ecx, r14d
call fcn.1000193f0
xor esi, esi
mov eax, r13d
lock xadd dword [rbx + 8], eax
dec eax
jne 0x10003f99b
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax]
mov qword [rsp + 0xe8], rsi
test rdi, rdi
jne 0x10003f910
mov r14d, dword [rsp + 0x34]
jmp 0x10003f9c9
mov rbp, qword [rsp + 0x140]
jmp 0x10003f9c9
mov rbp, qword [rsp + 0x140]
jmp 0x10003f9c9
xor esi, esi
mov rcx, qword [rbp]
test rcx, rcx
je 0x10003f9ef
lock xadd dword [rcx + 8], r13d
dec r13d
jne 0x10003f9eb
test rcx, rcx
je 0x10003f9eb
mov rax, qword [rcx]
lea edx, [r13 + 1]
call qword [rax]
mov qword [rbp], rsi
mov eax, r14d
mov rbx, qword [rsp + 0x158]
mov rbp, qword [rsp + 0x130]
mov rsi, qword [rsp + 0x128]
mov rdi, qword [rsp + 0x120]
mov r12, qword [rsp + 0x118]
mov r13, qword [rsp + 0x110]
mov r14, qword [rsp + 0x108]
mov r15, qword [rsp + 0x100]
add rsp, 0x138
ret