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

Disassembly:
ret
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x98
cmp qword [rcx + 0x88], rdx
mov rbx, rcx
je 0x487a60
cmp qword [rcx + 0xa8], rdx
je 0x487830
cmp qword [rcx + 0xb0], rdx
je 0x487890
add rsp, 0x98
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp dword [0x004f7050], 0xffffffff
je 0x487910
mov rcx, qword [0x006f4610]
call fcn.0049a5a0
mov edx, dword [0x004f7050]
cmp edx, eax
jg 0x487815
mov rcx, qword [rbx + 0xb8]
sub edx, 1
mov rax, qword [0x006f4a30]
mov dword [rax], edx
call fcn.004bed70
mov rcx, qword [rbx + 0xb8]
mov esi, eax
call fcn.004bed10
lea ecx, [rsi + rax]
call fcn.0048b400
mov rcx, rbx
call fcn.00487500
jmp 0x487815
movzx eax, byte [0x004f7520]
test al, al
jne 0x4878af
lea rcx, [0x004f7520]
call fcn.004e26d0
test eax, eax
jne 0x487d34
movzx eax, byte [0x004f7510]
test al, al
je 0x487d80
mov rcx, qword [0x004f7690]
test rcx, rcx
je 0x487ff0
add rcx, 0x1f8
call fcn.004d35c0
ucomisd xmm0, qword [0x004fab38]
jp 0x4878ea
je 0x487dc0
cmp byte [rbx + 0x50], 0
je 0x487b70
mov rcx, qword [rbx + 0x58]
mov rax, qword [rcx]
call qword [rax + 0xf8]
mov byte [rbx + 0x50], 0
jmp 0x487815
lea rsi, [rsp + 0x30]
mov ecx, 0x4149
movabs rdx, 0x8be68980e9b7afe8
lea rax, [rsi + 0x10]
mov qword [rsp + 0x40], rdx
movabs rdi, 0x4d205443454c4553
mov r8d, 0xffff96e6
mov qword [rsp + 0x30], rax
lea rbp, [rsp + 0x28]
mov eax, 0xffff96e6
mov word [rsi + 0x1c], ax
lea rax, [rsi + 0x30]
mov dword [rsi + 0x18], 0x909de6a9
mov byte [rsi + 0x1e], 0x99
mov qword [rsp + 0x50], rax
lea rax, [rsi + 0x50]
mov qword [rsp + 0x38], 0xf
mov byte [rsp + 0x4f], 0
mov qword [rsp + 0x60], rdi
mov word [rsi + 0x3c], cx
mov rcx, rbp
mov dword [rsi + 0x38], 0x52455441
mov byte [rsi + 0x3e], 0x4c
mov qword [rsp + 0x80], rdx
mov rdx, qword [0x006f4840]
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x6f], 0
mov qword [rsp + 0x70], rax
mov dword [rax + 8], 0x909de6a9
mov word [rax + 0xc], r8w
mov byte [rax + 0xe], 0x99
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x8f], 0
call fcn.0040d1c0
lea rdi, [rsp + 0x20]
mov rdx, rsi
mov rcx, rdi
call fcn.0040d1c0
mov rdx, rbp
mov rcx, rdi
call fcn.00424ca0
mov rcx, qword [rsp + 0x20]
mov eax, dword [rcx]
test eax, eax
je 0x487b50
cmp eax, 0xffffffff
je 0x487a13
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x20]
je 0x487b50
mov rcx, qword [rsp + 0x28]
mov eax, dword [rcx]
test eax, eax
je 0x487d60
cmp eax, 0xffffffff
je 0x487a36
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x28]
je 0x487d60
lea rbx, [rsi + 0x40]
lea rsi, [rsp + 0x10]
mov rcx, qword [rbx]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x487a50
call fcn.004e2700
sub rbx, 0x20
cmp rbx, rsi
jne 0x487a3f
jmp 0x487815
movzx eax, byte [0x004f7460]
test al, al
jne 0x487a7f
lea rcx, [0x004f7460]
call fcn.004e26d0
test eax, eax
jne 0x487ee0
movzx eax, byte [0x004f7450]
test al, al
je 0x487b10
mov rbx, qword [0x004f75d0]
test rbx, rbx
je 0x487f40
lea rsi, [rsp + 0x30]
mov edx, 0xc
lea rcx, str.10MonitorDlg
call qword [0x007207dc]
xor r8d, r8d
mov rdx, rsi
mov rcx, rbx
mov qword [rsp + 0x30], rax
call fcn.004a8cc0
mov rcx, qword [rsp + 0x30]
mov eax, dword [rcx]
test eax, eax
je 0x487af0
cmp eax, 0xffffffff
je 0x487815
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x30]
jne 0x487815
nop dword [rax + rax]
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x487815
lea rcx, [0x004f7450]
call fcn.004e26d0
test eax, eax
je 0x487a8e
lea rcx, [0x004f7450]
mov qword [0x004f75d0], 0
call fcn.004e26c8
lea rcx, [0x00486f50]
call fcn.00401510
jmp 0x487a8e
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x487a13
lea rdi, [rsp + 0x20]
mov rcx, rdi
call qword [0x00720f94]
movzx eax, byte [0x004f74e0]
test al, al
jne 0x487b9d
lea rcx, [0x004f74e0]
call fcn.004e26d0
test eax, eax
jne 0x4880c8
movzx eax, byte [0x004f74d0]
test al, al
je 0x488060
mov rax, qword [0x004f7650]
test rax, rax
je 0x4881b0
lea r12, [rax + 0x2c48]
xor edx, edx
mov r13, qword [0x007207dc]
lea rcx, [0x004fa990]
call r13
lea rsi, [rsp + 0x30]
mov rdx, r12
mov qword [rsp + 0x28], rax
lea rbp, [rsp + 0x28]
mov rcx, rsi
mov r8, rbp
call fcn.004d36e0
mov rdx, rsi
mov rcx, rdi
call qword [0x00720f8c]
mov rcx, qword [rsp + 0x30]
mov eax, dword [rcx]
test eax, eax
je 0x487fb0
cmp eax, 0xffffffff
je 0x487c22
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x30]
je 0x487fb0
mov rcx, qword [rsp + 0x28]
mov eax, dword [rcx]
test eax, eax
je 0x487f90
cmp eax, 0xffffffff
je 0x487c45
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x28]
je 0x487f90
mov r12, qword [rbx + 0x58]
mov rax, qword [r12]
mov r14, qword [rax + 0xf0]
movzx eax, byte [0x004f74e0]
test al, al
jne 0x487c73
lea rcx, [0x004f74e0]
call fcn.004e26d0
test eax, eax
jne 0x48809c
movzx eax, byte [0x004f74d0]
test al, al
je 0x488024
mov rax, qword [0x004f7650]
test rax, rax
je 0x488180
lea rbx, [rax + 0x2c90]
xor edx, edx
lea rcx, [0x004fa990]
call r13
mov r8, rbp
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x28], rax
call fcn.004d36e0
mov r8d, 0xa
xor edx, edx
mov rcx, rsi
call qword [0x00720b2c]
lea r8d, [rax - 1]
mov r9d, 3
mov rdx, rdi
movzx r8d, r8w
mov rcx, r12
call r14
mov rcx, qword [rsp + 0x30]
mov eax, dword [rcx]
test eax, eax
je 0x487fd0
cmp eax, 0xffffffff
je 0x487d03
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x30]
je 0x487fd0
mov rcx, qword [rsp + 0x28]
mov eax, dword [rcx]
test eax, eax
je 0x487f74
cmp eax, 0xffffffff
je 0x487d26
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x28]
je 0x487f74
mov rcx, rdi
call qword [0x00720f9c]
jmp 0x487815
lea rcx, [0x004f76a0]
xor edx, edx
call qword [0x007206cc]
lea rcx, [0x004f7520]
call fcn.004e26c8
lea rcx, [0x00486fd0]
call fcn.00401510
jmp 0x4878af
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x487a36
lea rcx, [0x004f7510]
call fcn.004e26d0
test eax, eax
je 0x4878be
lea rcx, [0x004f7510]
mov qword [0x004f7690], 0
call fcn.004e26c8
lea rcx, [0x00487000]
call fcn.00401510
jmp 0x4878be
lea rsi, [rsp + 0x30]
mov rdx, qword [0x006f4840]
movabs rdi, 0xb8e48ca1e890bfe8
lea rax, [rsi + 0x10]
mov qword [rsp + 0x40], rdi
sub rdi, 0x53dff
mov qword [rsp + 0x30], rax
lea rax, [rsi + 0x30]
mov byte [rsi + 0x18], 0xad
lea rbp, [rsp + 0x28]
mov qword [rsp + 0x50], rax
mov rcx, rbp
movabs rax, 0x474e494e4e55522e
mov qword [rsp + 0x60], rax
lea rax, [rsi + 0x50]
mov qword [rsp + 0x38], 9
mov byte [rsp + 0x49], 0
mov qword [rsp + 0x58], 8
mov byte [rsp + 0x68], 0
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x80], rdi
mov byte [rax + 8], 0xad
mov qword [rsp + 0x78], 9
mov byte [rsp + 0x89], 0
call fcn.0040d1c0
lea rdi, [rsp + 0x20]
mov rdx, rsi
mov rcx, rdi
call fcn.0040d1c0
mov rdx, rbp
mov rcx, rdi
call fcn.00424ca0
mov rcx, qword [rsp + 0x20]
mov eax, dword [rcx]
test eax, eax
je 0x487f23
cmp eax, 0xffffffff
je 0x487e94
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x20]
je 0x487f23
mov rcx, qword [rsp + 0x28]
mov eax, dword [rcx]
test eax, eax
je 0x487f10
cmp eax, 0xffffffff
je 0x487eaf
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x28]
je 0x487f10
lea rbx, [rsi + 0x40]
lea rsi, [rsp + 0x10]
mov rcx, qword [rbx]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x487ec9
call fcn.004e2700
sub rbx, 0x20
cmp rbx, rsi
jne 0x487eb8
jmp 0x487815
lea rcx, [0x004f75e0]
xor edx, edx
call qword [0x007206cc]
lea rcx, [0x004f7460]
call fcn.004e26c8
lea rcx, [0x00486fe0]
call fcn.00401510
jmp 0x487a7f
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x487eaf
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x487e94
lea rcx, [0x004f75e0]
call qword [0x007206bc]
cmp qword [0x004f75d0], 0
je 0x4880f4
lea rcx, [0x004f75e0]
call qword [0x007206c4]
mov rbx, qword [0x004f75d0]
jmp 0x487a9e
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x487d26
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x487c45
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x487c22
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x487d03
lea rcx, [0x004f76a0]
call qword [0x007206bc]
cmp qword [0x004f7690], 0
je 0x488136
lea rcx, [0x004f76a0]
call qword [0x007206c4]
mov rcx, qword [0x004f7690]
jmp 0x4878ce
lea rcx, [0x004f74d0]
call fcn.004e26d0
test eax, eax
je 0x487c82
lea rcx, [0x004f74d0]
mov qword [0x004f7650], 0
call fcn.004e26c8
lea rcx, [0x00487040]
call fcn.00401510
jmp 0x487c82
lea rcx, [0x004f74d0]
call fcn.004e26d0
test eax, eax
je 0x487bac
lea rcx, [0x004f74d0]
mov qword [0x004f7650], 0
call fcn.004e26c8
lea rcx, [0x00487040]
call fcn.00401510
jmp 0x487bac
lea rcx, [0x004f7660]
xor edx, edx
call qword [0x007206cc]
lea rcx, [0x004f74e0]
call fcn.004e26c8
lea rcx, [0x00486ff0]
call fcn.00401510
jmp 0x487c73
lea rcx, [0x004f7660]
xor edx, edx
call qword [0x007206cc]
lea rcx, [0x004f74e0]
call fcn.004e26c8
lea rcx, [0x00486ff0]
call fcn.00401510
jmp 0x487b9d
mov ecx, 0x50
call fcn.004e26f0
xor edx, edx
mov rcx, rax
mov rbx, rax
call fcn.004a7750
mov rcx, qword [0x004f75d0]
cmp rbx, rcx
je 0x487f5b
test rcx, rcx
mov qword [0x004f75d0], rbx
je 0x487f5b
mov rax, qword [rcx]
call qword [rax + 0x20]
jmp 0x487f5b
mov ecx, 0x15f48
call fcn.004e26f0
mov rcx, rax
mov rsi, rax
call fcn.0042c6f0
mov rdi, qword [0x004f7690]
cmp rsi, rdi
je 0x48800b
test rdi, rdi
mov qword [0x004f7690], rsi
je 0x48800b
mov rcx, rdi
call fcn.0042d750
mov rcx, rdi
call fcn.004e2700
jmp 0x48800b
lea rcx, [0x004f7660]
call qword [0x007206bc]
cmp qword [0x004f7650], 0
je 0x4881e0
lea rcx, [0x004f7660]
call qword [0x007206c4]
mov rax, qword [0x004f7650]
jmp 0x487c92
lea rcx, [0x004f7660]
call qword [0x007206bc]
cmp qword [0x004f7650], 0
je 0x488222
lea rcx, [0x004f7660]
call qword [0x007206c4]
mov rax, qword [0x004f7650]
jmp 0x487bbc
mov ecx, 0x5728
call fcn.004e26f0
mov rcx, rax
mov r15, rax
call fcn.00427df0
mov rbx, qword [0x004f7650]
cmp r15, rbx
je 0x488197
test rbx, rbx
mov qword [0x004f7650], r15
je 0x488197
mov rcx, rbx
call fcn.004276c0
mov rcx, rbx
call fcn.004e2700
jmp 0x488197
mov ecx, 0x5728
call fcn.004e26f0
mov rcx, rax
mov rsi, rax
call fcn.00427df0
mov rbp, qword [0x004f7650]
cmp rsi, rbp
je 0x4881c7
test rbp, rbp
mov qword [0x004f7650], rsi
je 0x4881c7
mov rcx, rbp
call fcn.004276c0
mov rcx, rbp
call fcn.004e2700
jmp 0x4881c7
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x98
movsxd rbx, r8d
mov rdi, rcx
mov eax, ebx
or eax, edx
je 0x488430
test ebx, ebx
jle 0x48841c
cmp edx, 1
je 0x488570
lea r12d, [rbx - 1]
cmp edx, 4
je 0x4885c4
mov rcx, qword [rdi + 0xb8]
call fcn.004bed10
lea eax, [rax + r12 + 1]
mov dword [0x004f7050], eax
add rsp, 0x98
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
lea rsi, [rsp + 0x30]
mov r8d, 0x4f52
movabs rdx, 0xa1e89aaee5878ce6
lea rax, [rsi + 0x10]
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x30], rax
lea rax, [rsi + 0x30]
mov byte [rsi + 0x18], 0x8c
lea rbp, [rsp + 0x28]
mov qword [rsp + 0x50], rax
lea rax, [rsi + 0x50]
mov rcx, rbp
mov qword [rsp + 0x38], 9
mov byte [rsp + 0x49], 0
mov dword [rsp + 0x60], 0x20544553
mov word [rsi + 0x34], r8w
mov byte [rsi + 0x36], 0x57
mov qword [rsp + 0x80], rdx
mov rdx, rsi
mov qword [rsp + 0x58], 7
mov byte [rsp + 0x67], 0
mov qword [rsp + 0x70], rax
mov byte [rax + 8], 0x8c
mov qword [rsp + 0x78], 9
mov byte [rsp + 0x89], 0
call fcn.0040d1c0
movss xmm2, dword [0x004fab40]
xor r9d, r9d
mov rcx, rbp
movss xmm1, dword [0x004fab44]
call fcn.00421030
mov rcx, qword [rsp + 0x28]
mov ebx, eax
mov edx, dword [rcx]
test edx, edx
je 0x488531
cmp edx, 0xffffffff
je 0x4884fb
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x28]
je 0x488531
test bl, bl
jne 0x488546
lea rbx, [rsp + 0x90]
sub rbx, 0x20
mov rcx, qword [rbx]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x48851c
call fcn.004e2700
cmp rbx, rsi
jne 0x488507
add rsp, 0x98
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
test bl, bl
je 0x4884ff
mov rbx, qword [rdi + 0xb8]
mov r8d, 0xa
xor edx, edx
mov rcx, qword [0x006f4ce0]
call qword [0x00720b34]
lea edx, [rax - 1]
mov rcx, rbx
call fcn.004bed20
jmp 0x4884ff
mov rax, qword [rcx + 0xb8]
movsxd rsi, ebx
mov rcx, qword [rax + rsi*8 + 0x380]
mov eax, dword [rcx]
add eax, 1
cmp eax, 1
ja 0x4887f0
mov ebp, dword [rcx + 4]
mov eax, dword [rcx]
test eax, eax
je 0x488730
cmp eax, 0xffffffff
je 0x4885ac
lock sub dword [rcx], 1
je 0x488730
test ebp, ebp
mov rcx, qword [rdi + 0xb8]
jne 0x488750
lea r12d, [rbx - 1]
jmp 0x48840c
mov rcx, qword [0x006f4610]
call fcn.0049a5a0
mov rcx, qword [rdi + 0xb8]
mov esi, eax
call fcn.004bed10
lea r13d, [rax + r12]
cmp esi, r13d
jle 0x488723
lea rsi, [rsp + 0x30]
mov edx, 0x6b72
mov ecx, 0xffffa8b3
mov dword [rsp + 0x40], 0xe687a4e5
lea rax, [rsi + 0x10]
mov qword [rsp + 0x30], rax
mov eax, 0xffffa8b3
mov word [rsi + 0x14], ax
lea rax, [rsi + 0x30]
mov qword [rsp + 0x50], rax
lea rax, [rsi + 0x50]
mov byte [rsp + 0x46], 0
mov dword [rsp + 0x60], 0x616d6552
mov qword [rsp + 0x38], 6
mov word [rsi + 0x34], dx
mov qword [rsp + 0x70], rax
mov rax, qword [rdi + 0xb8]
mov byte [rsp + 0x66], 0
mov dword [rsp + 0x80], 0xe687a4e5
mov qword [rsp + 0x58], 6
mov word [rsi + 0x54], cx
mov byte [rsp + 0x86], 0
mov rdx, qword [rax + rbx*8 + 0x830]
mov qword [rsp + 0x78], 6
mov qword [rsp + 0x28], rdx
mov eax, dword [rdx]
add eax, 1
cmp eax, 1
ja 0x4888f0
lea rbx, [rsp + 0x20]
mov rdx, rsi
mov rcx, rbx
call fcn.0040d1c0
lea rbp, [rsp + 0x28]
mov rcx, rbx
mov rdx, rbp
call fcn.00412230
mov rcx, qword [rsp + 0x20]
mov ebx, eax
mov eax, dword [rcx]
test eax, eax
je 0x488800
cmp eax, 0xffffffff
je 0x4886d5
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x20]
je 0x488800
mov rcx, qword [rsp + 0x28]
mov edx, dword [rcx]
test edx, edx
je 0x488820
cmp edx, 0xffffffff
je 0x4886f8
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x28]
je 0x488820
test bl, bl
jne 0x488880
lea rbx, [rsp + 0x10]
add rsi, 0x40
mov rcx, qword [rsi]
lea rax, [rsi + 0x10]
cmp rcx, rax
je 0x48871a
call fcn.004e2700
sub rsi, 0x20
cmp rsi, rbx
jne 0x488709
mov rcx, rdi
call fcn.00487500
jmp 0x488405
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x4885ac
mov rdx, qword [rcx + rsi*8 + 0x380]
mov qword [rsp + 0x30], rdx
mov eax, dword [rdx]
add eax, 1
cmp eax, 1
ja 0x488960
mov rdx, qword [0x006f47a0]
lea rbp, [rsp + 0x28]
mov rcx, rbp
call fcn.0040d1c0
lea rsi, [rsp + 0x30]
mov rcx, rbp
mov rdx, rsi
call fcn.00412230
mov rcx, qword [rsp + 0x28]
mov ebp, eax
mov edx, dword [rcx]
test edx, edx
je 0x488860
cmp edx, 0xffffffff
je 0x4887b4
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x28]
je 0x488860
mov rcx, qword [rsp + 0x30]
mov edx, dword [rcx]
test edx, edx
je 0x488840
cmp edx, 0xffffffff
je 0x4887d3
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x30]
je 0x488840
test bpl, bpl
jne 0x488900
lea r12d, [rbx - 1]
mov rcx, qword [rdi + 0xb8]
jmp 0x48840c
lock add dword [rcx], 1
jmp 0x488590
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x4886d5
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x4886f8
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x4887d3
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x4887b4
mov rax, qword [0x006f4ce0]
mov rdx, qword [rax]
mov qword [rsp + 0x28], rdx
mov eax, dword [rdx]
add eax, 1
cmp eax, 1
ja 0x48897c
mov rcx, qword [0x006f4610]
mov r8, rbp
mov edx, r13d
call fcn.0049c380
mov rcx, qword [rsp + 0x28]
mov eax, dword [rcx]
test eax, eax
je 0x4888d2
cmp eax, 0xffffffff
je 0x488700
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x28]
jne 0x488700
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x488700
lock add dword [rdx], 1
jmp 0x488690
mov rax, qword [0x006f4ce0]
mov rdx, qword [rax]
mov qword [rsp + 0x30], rdx
mov eax, dword [rdx]
add eax, 1
cmp eax, 1
ja 0x488985
mov rcx, qword [rdi + 0xb8]
call fcn.004bed10
mov rcx, qword [0x006f4610]
lea edx, [rax + rbx - 1]
mov r8, rsi
call fcn.0049c240
mov rcx, qword [rsp + 0x30]
mov eax, dword [rcx]
test eax, eax
je 0x488969
cmp eax, 0xffffffff
je 0x488953
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x30]
je 0x488969
mov rcx, rdi
call fcn.00487500
jmp 0x4887dc
lock add dword [rdx], 1
jmp 0x48876b
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x488953
lock add dword [rdx], 1
jmp 0x48889d
lock add dword [rdx], 1
jmp 0x488919
push rbx
sub rsp, 0x20
lea rdx, [0x004fa991]
mov rbx, rcx
mov byte [rcx + 0x50], 1
mov rcx, qword [rcx + 0x58]
call qword [0x00720984]
mov rcx, qword [rbx + 0x58]
add rsp, 0x20
pop rbx
jmp qword [0x00720fa4]
mov byte [rcx + 0x50], 0
ret
ret
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xb8
mov rbx, rcx
mov rdx, qword [rbx + 0x58]
lea rcx, [rsp + 0x68]
call qword [0x00720994]
mov rcx, qword [rsp + 0x68]
mov r8d, dword [rcx + 4]
test r8d, r8d
je 0x48a961
xor edx, edx
add rcx, qword [rcx + 0x10]
je 0x48a6c3
mov rax, rcx
cmp byte [rax], 0
je 0x48a6c3
add edx, 1
add rax, 1
cmp edx, r8d
jne 0x48a6b2
mov r12, qword [0x007207dc]
call r12
lea rbp, [rsp + 0x70]
mov qword [rsp + 0x70], rax
mov r8d, 0xc
lea rdi, [rsp + 0xa8]
mov rdx, rbp
mov rcx, rdi
call qword [0x00720b0c]
mov rcx, qword [rsp + 0xa8]
mov r9d, 0xffffffff
lea r8, [0x004faaa7]
mov rsi, qword [0x007207bc]
mov edx, dword [rcx + 4]
add rcx, qword [rcx + 0x10]
mov dword [rsp + 0x20], 1
call rsi
mov rcx, qword [rsp + 0xa8]
mov r13d, eax
mov edx, dword [rcx]
test edx, edx
je 0x48a742
cmp edx, 0xffffffff
je 0x48a753
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0xa8]
jne 0x48a753
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
test r13d, r13d
jne 0x48a9a3
lea r14, [rbx + 0x70]
mov rcx, r14
call qword [0x00720bec]
test al, al
jne 0x48aa25
lea r13, [rsp + 0x78]
xor r9d, r9d
mov rdx, rbp
mov r15, qword [0x00720b1c]
mov qword [rbx + 0x60], 0
mov r8d, 0x2d
mov rcx, r13
mov qword [rbx + 0x68], 0
mov dword [rsp + 0x20], 1
call r15
mov rax, qword [rsp + 0x78]
mov edx, dword [rax]
cmp edx, 1
jbe 0x48a7be
mov edx, dword [rax + 4]
mov rcx, r13
call fcn.004e9e50
mov rax, qword [rsp + 0x78]
movsxd rdx, dword [rax + 8]
mov rdx, qword [rax + rdx*8 + 0x18]
mov qword [rsp + 0x80], rdx
mov eax, dword [rdx]
add eax, 1
cmp eax, 1
ja 0x48aa90
lea rax, [rsp + 0x80]
mov dword [rsp + 0x20], 1
xor r9d, r9d
mov r8d, 0x2f
lea r12, [rsp + 0x88]
mov qword [rsp + 0x38], rax
mov rdx, rax
mov rcx, r12
call r15
mov rax, qword [rsp + 0x88]
mov edx, dword [rax]
cmp edx, 1
jbe 0x48a82b
mov edx, dword [rax + 4]
mov rcx, r12
call fcn.004e9e50
mov rax, qword [rsp + 0x88]
mov r9d, 0xffffffff
lea r8, [0x004faab4]
movsxd rdx, dword [rax + 8]
mov rcx, qword [rax + rdx*8 + 0x18]
mov edx, dword [rcx + 4]
add rcx, qword [rcx + 0x10]
mov dword [rsp + 0x20], 1
call rsi
test eax, eax
mov rdx, qword [rsp + 0x88]
jne 0x48a8b7
mov eax, dword [rdx]
cmp eax, 1
jbe 0x48a878
mov edx, dword [rdx + 4]
mov rcx, r12
call fcn.004e9e50
mov rax, qword [rsp + 0x88]
mov r9d, 0xffffffff
lea r8, [0x004faab9]
movsxd rdx, dword [rax + 8]
mov rcx, qword [rax + rdx*8 + 0x20]
mov edx, dword [rcx + 4]
add rcx, qword [rcx + 0x10]
mov dword [rsp + 0x20], 1
call rsi
test eax, eax
mov rdx, qword [rsp + 0x88]
je 0x48ad00
mov eax, dword [rdx]
cmp eax, 1
jbe 0x48a8c9
mov edx, dword [rdx + 4]
mov rcx, r12
call fcn.004e9e50
mov rax, qword [rsp + 0x88]
mov r9d, 0xffffffff
lea r8, [0x004faab4]
movsxd rdx, dword [rax + 8]
mov rcx, qword [rax + rdx*8 + 0x18]
mov edx, dword [rcx + 4]
add rcx, qword [rcx + 0x10]
mov dword [rsp + 0x20], 1
call rsi
test eax, eax
je 0x48aaa0
mov rcx, r12
call fcn.004ea180
mov rcx, qword [rsp + 0x80]
mov eax, dword [rcx]
test eax, eax
je 0x48aa73
cmp eax, 0xffffffff
je 0x48a931
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x80]
je 0x48aa73
mov rcx, r13
call fcn.004ea180
mov rcx, qword [rsp + 0x70]
mov eax, dword [rcx]
test eax, eax
je 0x48aa5d
cmp eax, 0xffffffff
je 0x48a95c
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x70]
je 0x48aa5d
mov rcx, qword [rsp + 0x68]
mov eax, dword [rcx]
test eax, eax
je 0x48a990
cmp eax, 0xffffffff
je 0x48a977
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x68]
je 0x48a990
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov r8d, 8
mov edx, 1
call qword [0x007204b4]
jmp 0x48a977
mov rcx, qword [rsp + 0x70]
mov r9d, 0xffffffff
lea r8, [0x004fab02]
mov edx, dword [rcx + 4]
add rcx, qword [rcx + 0x10]
mov dword [rsp + 0x20], 1
call rsi
test eax, eax
je 0x48aa33
mov rcx, qword [rsp + 0x70]
mov r9d, 0xffffffff
lea r8, [0x004fab1a]
mov edx, dword [rcx + 4]
add rcx, qword [rcx + 0x10]
mov dword [rsp + 0x20], 1
call rsi
test eax, eax
jne 0x48abe2
mov rcx, qword [rbx + 0x58]
mov rax, qword [rcx]
call qword [rax + 0xf8]
add rbx, 0x70
mov rcx, rbx
call qword [0x00720bec]
test al, al
je 0x48a939
mov rcx, rbx
call qword [0x0072052c]
jmp 0x48a939
mov rcx, r14
call qword [0x0072052c]
jmp 0x48a771
mov rcx, qword [rbx + 0x58]
lea rdx, [0x004fab0d]
call qword [0x00720984]
mov rcx, qword [rbx + 0x58]
call qword [0x00720fa4]
mov rcx, qword [rsp + 0x70]
mov eax, dword [rcx]
test eax, eax
jne 0x48a948
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x48a95c
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x48a931
lock add dword [rdx], 1
jmp 0x48a7e2
mov rax, qword [rsp + 0x88]
mov edx, dword [rax]
cmp edx, 1
jbe 0x48aaba
mov edx, dword [rax + 4]
mov rcx, r12
call fcn.004e9e50
mov rax, qword [rsp + 0x88]
mov r9d, 0xffffffff
lea r8, [0x004faad3]
movsxd rdx, dword [rax + 8]
mov rcx, qword [rax + rdx*8 + 0x20]
mov edx, dword [rcx + 4]
add rcx, qword [rcx + 0x10]
mov dword [rsp + 0x20], 1
call rsi
test eax, eax
jne 0x48a900
mov rax, qword [rsp + 0x88]
mov edx, dword [rax]
cmp edx, 1
jbe 0x48ab0b
mov edx, dword [rax + 4]
mov rcx, r12
call fcn.004e9e50
mov rax, qword [rsp + 0x88]
movsxd rdx, dword [rax + 8]
lea r15, [rax + rdx*8 + 0x28]
lea rax, [rsp + 0x98]
mov qword [rsp + 0x48], rax
mov rcx, rax
call qword [0x007205cc]
mov rdx, qword [rsp + 0x98]
mov qword [rsp + 0xa0], rdx
mov eax, dword [rdx]
add eax, 1
cmp eax, 1
ja 0x48b0a0
lea rdx, [0x004faada]
mov r8d, 8
mov rcx, rdi
call qword [0x007207cc]
lea rax, [rsp + 0xa0]
mov rdx, rdi
mov rsi, qword [0x00720804]
mov qword [rsp + 0x40], rax
mov rcx, rax
call rsi
mov rcx, qword [rsp + 0xa8]
mov eax, dword [rcx]
test eax, eax
je 0x48b062
cmp eax, 0xffffffff
je 0x48abab
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0xa8]
je 0x48b062
mov rdx, qword [rsp + 0xa0]
mov qword [rsp + 0xa8], rdx
mov eax, dword [rdx]
add eax, 1
cmp eax, 1
ja 0x48b0a9
mov rdx, r15
mov rcx, rdi
call rsi
mov rdx, rdi
mov rcx, r14
call qword [0x0072064c]
jmp 0x48ade4
lea rsi, [rbx + 0x70]
mov rcx, rsi
call qword [0x00720bec]
test al, al
je 0x48a939
mov rax, qword [rsp + 0x68]
mov rcx, rsi
mov rdx, qword [rax + 0x10]
movsxd r8, dword [rax + 4]
add rdx, rax
call qword [0x0072098c]
add rax, qword [rbx + 0x68]
cmp rax, qword [rbx + 0x60]
mov qword [rbx + 0x68], rax
jl 0x48b08a
mov rcx, rsi
call qword [0x0072052c]
mov rcx, qword [rbx + 0x58]
lea rdx, [0x004fab0d]
call qword [0x00720984]
mov rcx, qword [rbx + 0x58]
call qword [0x00720fa4]
lea rcx, [0x004fa990]
xor edx, edx
call r12
mov rcx, qword [0x006f45f0]
mov rdx, rdi
mov qword [rsp + 0xa8], rax
call fcn.004aa770
mov rcx, qword [rsp + 0xa8]
mov eax, dword [rcx]
test eax, eax
je 0x48b0b2
cmp eax, 0xffffffff
je 0x48ac92
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0xa8]
je 0x48b0b2
lea rcx, [0x004fab28]
mov edx, 8
call r12
mov rcx, qword [0x006f4610]
mov rdx, rdi
mov qword [rsp + 0xa8], rax
call fcn.00499a40
mov rcx, qword [rsp + 0xa8]
mov eax, dword [rcx]
test eax, eax
je 0x48ace1
cmp eax, 0xffffffff
je 0x48a939
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0xa8]
jne 0x48a939
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x48a939
mov eax, dword [rdx]
cmp eax, 1
jbe 0x48ad12
mov edx, dword [rdx + 4]
mov rcx, r12
call fcn.004e9e50
mov rax, qword [rsp + 0x88]
movsxd rdx, dword [rax + 8]
lea r15, [rax + rdx*8 + 0x28]
lea rax, [rsp + 0x98]
mov qword [rsp + 0x48], rax
mov rcx, rax
call qword [0x007205cc]
mov rdx, qword [rsp + 0x98]
mov qword [rsp + 0xa0], rdx
mov eax, dword [rdx]
add eax, 1
cmp eax, 1
ja 0x48b081
lea rdx, [0x004faac5]
mov r8d, 0xd
mov rcx, rdi
call qword [0x007207cc]
lea rax, [rsp + 0xa0]
mov rdx, rdi
mov rsi, qword [0x00720804]
mov qword [rsp + 0x40], rax
mov rcx, rax
call rsi
mov rcx, qword [rsp + 0xa8]
mov eax, dword [rcx]
test eax, eax
je 0x48b036
cmp eax, 0xffffffff
je 0x48adb2
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0xa8]
je 0x48b036
mov rdx, qword [rsp + 0xa0]
mov qword [rsp + 0xa8], rdx
mov eax, dword [rdx]
add eax, 1
cmp eax, 1
ja 0x48b078
mov rdx, r15
mov rcx, rdi
call rsi
mov rdx, rdi
mov rcx, r14
call qword [0x0072064c]
mov rcx, qword [rsp + 0xa8]
mov eax, dword [rcx]
test eax, eax
je 0x48afe0
cmp eax, 0xffffffff
je 0x48ae0d
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0xa8]
je 0x48afe0
mov rcx, qword [rsp + 0xa0]
mov eax, dword [rcx]
test eax, eax
je 0x48afc0
cmp eax, 0xffffffff
je 0x48ae36
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0xa0]
je 0x48afc0
mov rcx, qword [rsp + 0x98]
mov eax, dword [rcx]
test eax, eax
je 0x48afa0
cmp eax, 0xffffffff
je 0x48ae5f
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0x98]
je 0x48afa0
lea r15, [rsp + 0x90]
mov rcx, r15
call qword [0x0072093c]
mov rdx, r14
mov rcx, r15
call qword [0x0072092c]
mov rax, qword [0x00720bc4]
mov rdx, r15
mov rcx, rdi
mov qword [rsp + 0x58], rax
call rax
mov rcx, rdi
call qword [0x00720a4c]
mov byte [rsp + 0x57], al
mov rcx, rdi
mov rsi, qword [0x00720634]
call rsi
movzx eax, byte [rsp + 0x57]
test al, al
jne 0x48af23
mov rdx, r15
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x58]
call rax
mov rdx, r15
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x58]
call rax
mov rdx, qword [rsp + 0x40]
mov rcx, rdi
call qword [0x00720a34]
mov rdx, rdi
mov rcx, qword [rsp + 0x48]
call qword [0x00720a44]
mov rcx, qword [rsp + 0xa8]
mov eax, dword [rcx]
test eax, eax
je 0x48b04c
cmp eax, 0xffffffff
je 0x48af15
lock sub dword [rcx], 1
mov rcx, qword [rsp + 0xa8]
je 0x48b04c
mov rcx, qword [rsp + 0x40]
call rsi
mov rcx, qword [rsp + 0x48]
call rsi
mov rax, qword [rsp + 0x78]
mov edx, dword [rax]
cmp edx, 1
jbe 0x48af3a
mov edx, dword [rax + 4]
mov rcx, r13
call fcn.004e9e50
mov rax, qword [rsp + 0x78]
mov r8d, 0xa
movsxd rdx, dword [rax + 8]
lea rcx, [rax + rdx*8 + 0x20]
xor edx, edx
call qword [0x00720ae4]
mov qword [rbx + 0x60], rax
mov edx, 2
mov rcx, r14
call qword [0x0072065c]
test al, al
mov rcx, qword [rbx + 0x58]
je 0x48b000
lea rdx, [0x004faae3]
call qword [0x00720984]
mov rcx, qword [rbx + 0x58]
call qword [0x00720fa4]
mov rcx, r15
call qword [0x00720944]
jmp 0x48a900
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x48ae5f
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x48ae36
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x48ae0d
lea rdx, [0x004faaf4]
call qword [0x00720984]
mov rcx, qword [rbx + 0x58]
call qword [0x00720fa4]
mov rcx, qword [rbx + 0x58]
mov rax, qword [rcx]
call qword [rax + 0xf8]
mov byte [rbx + 0x50], 0
mov rcx, r15
call qword [0x00720944]
jmp 0x48a900
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x48adb2
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x48af15
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x48abab
lock add dword [rdx], 1
jmp 0x48add0
lock add dword [rdx], 1
jmp 0x48ad57
mov rcx, qword [rbx + 0x58]
lea rdx, [0x004faae3]
call qword [0x00720984]
jmp 0x48aa44
lock add dword [rdx], 1
jmp 0x48ab50
lock add dword [rdx], 1
jmp 0x48abc9
mov r8d, 8
mov edx, 2
call qword [0x007204b4]
jmp 0x48ac92
cmp edx, 8
ja case.default.0x4a1735
lea r9, [0x006ea820]
mov edx, edx
movsxd rax, dword [r9 + rdx*4]
add rax, r9
jmp rax
jmp 0x48a670
jmp 0x488a80
jmp fcn.00487120
mov rax, qword [r8 + 8]
mov rdx, qword [rax]
jmp 0x4874f0
mov rax, qword [r8 + 8]
mov rdx, qword [rax]
jmp 0x4877e0
jmp fcn.00487500
mov rdx, qword [r8 + 0x10]
mov rax, qword [r8 + 8]
mov r8d, dword [rdx]
mov edx, dword [rax]
jmp 0x4883d0
jmp 0x488a40
jmp 0x488a70
ret