Function at 0x1400c4d30
Capabilities:
Get geographical location

Disassembly:
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xe8]
sub rsp, 0x1e8
mov rdi, rcx
xor r12d, r12d
mov dword [rbp + 0x130], r12d
mov dword [rbp - 0x18], 1
call fcn.140008400
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], r12b
mov byte [rsp + 0x20], r12b
mov r15d, 0xffffffff
mov r9d, r15d
mov r8d, r15d
lea rdx, str.QTMetaAtom::GetTags
mov rcx, rax
call qword [r10 + 0x28]
mov qword [rbp - 0x10], rax
mov byte [rbp - 8], 1
lea rax, vtable.JRTimer.0
mov qword [rbp], rax
xor eax, eax
mov qword [rbp + 8], rax
lea rcx, [rbp]
call fcn.140025db0
mov dword [rbp + 0x10], 0x8a33f231
cmp byte [rbp - 8], r12b
je 0x1400c4e02
mov r10, qword [0x14019a6b8]
test r10, r10
je 0x1400c4e09
mov rax, qword [r10]
xor edx, edx
mov rcx, r10
call qword [rax + 0x50]
test rax, rax
je 0x1400c4e02
mov r10, qword [rax]
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
lea r9, str.Start
mov r8, qword [rbp - 0x10]
mov edx, dword [rbp - 0x18]
mov rcx, rax
call qword [r10 + 0x10]
mov r10, qword [0x14019a6b8]
mov r8d, r12d
mov rcx, r12
mov r11d, dword [rdi + 0x30]
mov edx, r12d
test r11d, r11d
je 0x1400c5cb4
mov rbx, qword [rdi + 0x40]
nop dword [rax]
nop word [rax + rax]
movsxd rax, edx
mov r9, qword [rbx + rax*8]
cmp dword [r9 + 0xc], 0x68646c72
jne 0x1400c4e50
test rcx, rcx
jne 0x1400c4e4d
test r8d, r8d
cmove rcx, r9
dec r8d
inc edx
cmp edx, r11d
jb 0x1400c4e30
test rcx, rcx
je 0x1400c5cb4
cmp dword [rcx + 0x5c], 0x6d647461
jne 0x1400c5cb4
test r10, r10
je 0x1400c4ea4
mov rax, qword [r10]
xor edx, edx
mov rcx, r10
call qword [rax + 0x50]
test rax, rax
je 0x1400c4ea4
mov r10, qword [rax]
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
lea r9, str.Handler_type_is_correct
mov r8, qword [rbp - 0x10]
mov edx, dword [rbp - 0x18]
mov rcx, rax
call qword [r10 + reloc.OLEAUT32.dll_VariantClear]
mov edx, r12d
mov rsi, r12
mov r9d, dword [rdi + 0x30]
mov ecx, r12d
test r9d, r9d
je 0x1400c5cb4
mov r10, qword [rdi + 0x40]
nop
movsxd rax, ecx
mov r8, qword [r10 + rax*8]
cmp dword [r8 + 0xc], 0x6b657973
jne 0x1400c4ede
test rsi, rsi
jne 0x1400c4edc
test edx, edx
cmove rsi, r8
dec edx
inc ecx
cmp ecx, r9d
jb 0x1400c4ec0
mov edx, r12d
mov r14, r12
mov ecx, r12d
nop
movsxd rax, ecx
mov r8, qword [r10 + rax*8]
cmp dword [r8 + 0xc], 0x696c7374
jne 0x1400c4f0e
test r14, r14
jne 0x1400c4f0c
test edx, edx
cmove r14, r8
dec edx
inc ecx
cmp ecx, r9d
jb 0x1400c4ef0
test rsi, rsi
je 0x1400c5cb4
test r14, r14
je 0x1400c5cb4
call fcn.140008400
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov rbx, rax
mov qword [rsp + 0x48], rax
call fcn.140008400
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov qword [rsp + 0x70], rax
mov r13d, r12d
lea rdi, [rsi + 0x68]
mov qword [rsp + 0x50], rdi
cmp dword [rdi], r12d
jle 0x1400c5a15
mov rbx, r12
mov qword [rbp - 0x20], rbx
nop dword [rax]
mov r8d, r13d
lea rdx, [rbp + 0x148]
mov rcx, rsi
call fcn.1400d54c0
nop
test r13d, r13d
js 0x1400c4f9b
cmp r13d, dword [rdi]
jge 0x1400c4f9b
lea rcx, [rbx + rbx*4]
mov rax, qword [rsi + 0x78]
mov edi, dword [rax + rcx*8 + 4]
jmp 0x1400c4f9e
mov edi, r12d
call fcn.140008400
mov r11, rax
mov rcx, qword [rbp + 0x148]
cmp dword [rcx - 0x10], 0
jg 0x1400c4fbe
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
jmp 0x1400c502b
mov eax, dword [rcx - 8]
cmp eax, 0xffffffff
jne 0x1400c4fee
mov rdx, qword [rbp + 0x148]
mov rax, qword [r11]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, dword [rdx - 0x10]
mov rcx, r11
call qword [rax + 0x28]
jmp 0x1400c502b
mov rax, qword [rbp + 0x148]
cmp r11, qword [rax - 0x18]
je 0x1400c5020
mov r10, qword [r11]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, dword [rax - 0x10]
mov rdx, rax
mov rcx, r11
call qword [r10 + 0x28]
jmp 0x1400c502b
lock inc dword [rax - 8]
mov rax, qword [rbp + 0x148]
mov qword [rsp + 0x58], rax
lea r9, [rsp + 0x58]
mov r8d, edi
lea rdx, [rsp + 0x68]
call fcn.1400d5540
nop
mov r8d, r12d
mov rbx, r12
mov r9d, dword [r14 + 0x30]
mov ecx, r12d
test r9d, r9d
je 0x1400c598e
mov r10, qword [r14 + 0x40]
lea r11d, [r13 + 1]
movsxd rax, ecx
mov rdx, qword [r10 + rax*8]
cmp dword [rdx + 0xc], r11d
jne 0x1400c507d
test rbx, rbx
jne 0x1400c507a
test r8d, r8d
cmove rbx, rdx
dec r8d
inc ecx
cmp ecx, r9d
jb 0x1400c5061
test rbx, rbx
je 0x1400c598e
call fcn.140008400
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov qword [rbp + 0x140], rax
mov rax, qword [rbx]
lea rdx, [rbp + 0x140]
mov rcx, rbx
call qword [rax + 0x60]
test al, al
je 0x1400c595a
mov rax, qword [rbp + 0x148]
test rax, rax
je 0x1400c5126
movzx ecx, word [rax]
cmp cx, 0x63
jne 0x1400c5126
mov rdx, r12
test cx, cx
je 0x1400c50fd
mov r8, r12
lea r9, [0x140000000]
cmp cx, word [r8 + r9 + 0x1511b0]
jne 0x1400c50fd
inc rdx
lea r8, [rdx + rdx]
movzx ecx, word [r8 + rax]
test cx, cx
jne 0x1400c50e1
lea rcx, [0x140000000]
movzx ecx, word [rcx + rdx*2 + 0x1511b0]
cmp word [rax + rdx*2], cx
jne 0x1400c5126
cmp edi, 0x6d647461
jne 0x1400c5126
mov rcx, qword [rsp + 0x60]
mov bl, 1
jmp 0x1400c5208
mov dword [rbp + 0x70], r12d
movaps xmm0, xmmword [rbp + 0x70]
movdqa xmmword [rbp + 0xd0], xmm0
mov dword [rbp + 0x80], r12d
movaps xmm1, xmmword [rbp + 0x80]
movdqa xmmword [rbp + 0xc0], xmm1
mov dword [rbp + 0x90], r12d
movaps xmm0, xmmword [rbp + 0x90]
movdqa xmmword [rbp + 0xb0], xmm0
mov dword [rbp + 0x30], 4
mov qword [rbp + 0x38], 0xa9
movaps xmm0, xmmword [rbp + 0x30]
movdqa xmmword [rbp + 0xa0], xmm0
call fcn.140008400
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov qword [rsp + 0x60], rax
lea rax, [rbp + 0xa0]
mov qword [rbp + 0x40], rax
lea rax, [rbp + 0xb0]
mov qword [rbp + 0x48], rax
lea rax, [rbp + 0xc0]
mov qword [rbp + 0x50], rax
lea rax, [rbp + 0xd0]
mov qword [rbp + 0x58], rax
lea r9, [rsp + 0x60]
mov r8d, 4
lea rdx, [rbp + 0x40]
lea rcx, str._cDay
call fcn.14005db80
nop
or dword [rbp + 0x130], 1
mov rax, qword [rbp + 0x148]
mov rcx, qword [rsp + 0x60]
test rax, rax
jne 0x1400c529f
test rcx, rcx
je 0x1400c52ed
cmp word [rcx], ax
je 0x1400c52ed
xor bl, bl
test byte [rbp + 0x130], 1
je 0x1400c524c
and dword [rbp + 0x130], 0xfffffffe
lea rdx, [rcx - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c5245
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c523b
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c5245
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rax, qword [rbp + 0x148]
test bl, bl
je 0x1400c5339
mov rbx, qword [rbp + 0x140]
test rbx, rbx
je 0x1400c5300
cmp word [rbx], 0
je 0x1400c5300
mov rcx, qword [0x14019a6b8]
test rcx, rcx
je 0x1400c5300
mov rax, qword [rcx]
mov dl, 1
call qword [rax + 0x80]
test rax, rax
je 0x1400c5300
mov r9, qword [rax]
mov r8b, 1
mov rdx, rbx
mov rcx, rax
call qword [r9]
jmp 0x1400c5303
test rcx, rcx
jne 0x1400c52a9
cmp word [rax], cx
jmp 0x1400c52e2
movzx edx, word [rax]
cmp dx, word [rcx]
jne 0x1400c5206
mov r8, r12
test dx, dx
je 0x1400c52d8
mov r9, r12
cmp dx, word [r9 + rcx]
jne 0x1400c52d8
inc r8
lea r9, [r8 + r8]
movzx edx, word [r9 + rax]
test dx, dx
jne 0x1400c52c0
movzx edx, word [rcx + r8*2]
cmp word [rax + r8*2], dx
sete dl
test dl, dl
je 0x1400c5206
cmp edi, 0x75647461
jne 0x1400c5206
mov bl, 1
jmp 0x1400c5208
xorps xmm0, xmm0
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], r12d
xor r9d, r9d
mov r8d, r15d
movaps xmm1, xmm0
lea rcx, [rbp + 0x140]
call fcn.1400373a0
mov rbx, qword [rbp + 0x138]
mov rax, qword [rbx]
mov rdx, qword [rsp + 0x68]
mov rcx, rbx
jmp 0x1400c594c
test rax, rax
je 0x1400c587f
movzx ecx, word [rax]
cmp cx, 0x63
jne 0x1400c587f
mov rdx, r12
lea r9, [0x140000000]
test cx, cx
je 0x1400c537d
mov r8, r12
cmp cx, word [r8 + r9 + 0x151150]
jne 0x1400c537d
inc rdx
lea r8, [rdx + rdx]
movzx ecx, word [r8 + rax]
test cx, cx
jne 0x1400c5361
movzx ecx, word [r9 + rdx*2 + 0x151150]
cmp word [rax + rdx*2], cx
jne 0x1400c5886
cmp edi, 0x6d647461
jne 0x1400c5886
mov qword [rbp - 0x80], r12
mov dword [rbp - 0x78], r15d
mov qword [rbp - 0x70], r12
lea rax, vtable.JRStringArray.0
mov qword [rsp + 0x78], rax
call fcn.140008400
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, str.___NS__0_9._____EW__0_9._______0_9.___
mov rcx, rax
call qword [r10 + 0x28]
mov rbx, rax
mov qword [rbp + 0x18], rax
lea r8, [rsp + 0x78]
lea rdx, [rbp + 0x18]
lea rcx, [rbp + 0x140]
call fcn.140056390
movzx edi, al
lea rdx, [rbx - 0x18]
mov ecx, dword [rdx + 0x10]
cmp ecx, 0x7ffffc17
je 0x1400c542c
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c5422
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c542c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
test dil, dil
je 0x1400c5863
cmp dword [rbp - 0x80], 0
jle 0x1400c5460
mov rdx, qword [rbp - 0x70]
lea rcx, [rbp - 0x60]
call fcn.1400080e0
mov edi, dword [rbp + 0x130]
bts edi, 0xf
lea rdx, [rbp - 0x60]
bts edi, 0xc
mov rbx, qword [rbp - 0x68]
jmp 0x1400c54a0
call fcn.140008400
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, [0x140129d58]
mov rcx, rax
call qword [r10 + 0x28]
mov rbx, rax
mov qword [rbp - 0x68], rax
lea rdx, [rbp - 0x68]
mov edi, dword [rbp + 0x130]
bts edi, 0xd
mov dword [rbp + 0x130], edi
lea rcx, [rbp - 0x58]
call fcn.1400080e0
bts edi, 0xe
mov dword [rbp + 0x130], edi
bt edi, 0xd
jae 0x1400c54fc
btr edi, 0xd
mov dword [rbp + 0x130], edi
lea rdx, [rbx - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c54f6
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c54ec
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c54f6
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov edi, dword [rbp + 0x130]
bt edi, 0xc
jae 0x1400c5543
btr edi, 0xc
mov dword [rbp + 0x130], edi
mov rdx, qword [rbp - 0x60]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c553d
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c5533
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c553d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov edi, dword [rbp + 0x130]
mov rcx, qword [rbp + 0x138]
mov rax, qword [rcx]
xor r9d, r9d
lea r8, [rbp - 0x58]
lea rdx, str.Latitude
call qword [rax + 0x40]
btr edi, 0xe
mov dword [rbp + 0x130], edi
mov rdx, qword [rbp - 0x58]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c5599
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c558f
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c5599
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
cmp dword [rbp - 0x80], 1
jle 0x1400c55c7
mov rdx, qword [rbp - 0x70]
add rdx, 8
lea rcx, [rbp - 0x48]
call fcn.1400080e0
mov edi, dword [rbp + 0x130]
bts edi, 7
lea rdx, [rbp - 0x48]
or edi, 0x10
mov rbx, qword [rbp - 0x50]
jmp 0x1400c5606
call fcn.140008400
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, [0x140129d58]
mov rcx, rax
call qword [r10 + 0x28]
mov rbx, rax
mov qword [rbp - 0x50], rax
lea rdx, [rbp - 0x50]
mov edi, dword [rbp + 0x130]
or edi, 0x20
mov dword [rbp + 0x130], edi
lea rcx, [rbp - 0x40]
call fcn.1400080e0
or edi, 0x40
mov dword [rbp + 0x130], edi
test dil, 0x20
je 0x1400c5660
and edi, 0xffffffdf
mov dword [rbp + 0x130], edi
lea rdx, [rbx - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c565a
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c5650
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c565a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov edi, dword [rbp + 0x130]
test dil, 0x10
je 0x1400c56a6
and edi, 0xffffffef
mov dword [rbp + 0x130], edi
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c56a0
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c5696
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c56a0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov edi, dword [rbp + 0x130]
mov rcx, qword [rbp + 0x138]
mov rax, qword [rcx]
xor r9d, r9d
lea r8, [rbp - 0x40]
lea rdx, str.Longitude
call qword [rax + 0x40]
and edi, 0xffffffbf
mov dword [rbp + 0x130], edi
mov rdx, qword [rbp - 0x40]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c56fb
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c56f1
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c56fb
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
cmp dword [rbp - 0x80], 2
jle 0x1400c572a
mov rdx, qword [rbp - 0x70]
add rdx, 0x10
lea rcx, [rbp - 0x30]
call fcn.1400080e0
mov edi, dword [rbp + 0x130]
bts edi, 0xb
lea rdx, [rbp - 0x30]
bts edi, 8
mov rbx, qword [rbp - 0x38]
jmp 0x1400c576a
call fcn.140008400
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, [0x140129d58]
mov rcx, rax
call qword [r10 + 0x28]
mov rbx, rax
mov qword [rbp - 0x38], rax
lea rdx, [rbp - 0x38]
mov edi, dword [rbp + 0x130]
bts edi, 9
mov dword [rbp + 0x130], edi
lea rcx, [rbp - 0x28]
call fcn.1400080e0
bts edi, 0xa
mov dword [rbp + 0x130], edi
bt edi, 9
jae 0x1400c57c6
btr edi, 9
mov dword [rbp + 0x130], edi
lea rdx, [rbx - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c57c0
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c57b6
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c57c0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov edi, dword [rbp + 0x130]
bt edi, 8
jae 0x1400c580d
btr edi, 8
mov dword [rbp + 0x130], edi
mov rdx, qword [rbp - 0x30]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c5807
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c57fd
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c5807
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov edi, dword [rbp + 0x130]
mov rcx, qword [rbp + 0x138]
mov rax, qword [rcx]
xor r9d, r9d
lea r8, [rbp - 0x28]
lea rdx, str.Altitude
call qword [rax + 0x40]
btr edi, 0xa
mov dword [rbp + 0x130], edi
mov rdx, qword [rbp - 0x28]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c5863
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c5859
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c5863
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rax, vtable.JRCoreArray_class_JRString__class_JRString_const____ptr64__0_.0
mov qword [rsp + 0x78], rax
lea rcx, [rsp + 0x78]
call fcn.1400076b0
nop
jmp 0x1400c595a
lea r9, [0x140000000]
mov rax, qword [rbp + 0x140]
cmp dword [rax - 0x10], 0
jle 0x1400c595a
mov rbx, qword [rsp + 0x68]
cmp dword [rbx - 0x10], 0
jle 0x1400c595a
movzx r8d, word [rbx]
cmp r8w, 0x4d
jne 0x1400c593f
mov rcx, r12
test r8w, r8w
je 0x1400c58e0
movzx eax, r8w
mov rdx, r12
cmp ax, word [rdx + r9 + 0x151138]
jne 0x1400c58e0
inc rcx
lea rdx, [rcx + rcx]
movzx eax, word [rdx + rbx]
test ax, ax
jne 0x1400c58c5
movzx eax, word [r9 + rcx*2 + 0x151138]
cmp word [rbx + rcx*2], ax
jne 0x1400c58f6
lea rcx, [rsp + 0x48]
jmp 0x1400c5933
mov rcx, r12
test r8w, r8w
je 0x1400c591f
mov rax, r12
cmp r8w, word [rax + r9 + 0x151230]
jne 0x1400c591f
inc rcx
lea rax, [rcx + rcx]
movzx r8d, word [rax + rbx]
test r8w, r8w
jne 0x1400c5902
movzx eax, word [r9 + rcx*2 + 0x151230]
cmp word [rbx + rcx*2], ax
jne 0x1400c593f
lea rcx, [rsp + 0x70]
lea rdx, [rbp + 0x140]
call fcn.1400333a0
mov rcx, qword [rbp + 0x138]
mov rax, qword [rcx]
mov rdx, rbx
xor r9d, r9d
lea r8, [rbp + 0x140]
call qword [rax + 0x40]
nop
mov rdx, qword [rbp + 0x140]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c598e
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c5984
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c598e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c59c0
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c59b6
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c59c0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 0x148]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c59f4
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c59ea
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c59f4
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
inc r13d
mov rbx, qword [rbp - 0x20]
inc rbx
mov qword [rbp - 0x20], rbx
mov rdi, qword [rsp + 0x50]
cmp r13d, dword [rdi]
jl 0x1400c4f70
mov rbx, qword [rsp + 0x48]
call fcn.140008400
mov rcx, rax
cmp dword [rbx - 0x10], 0
jg 0x1400c5a2b
mov rdx, qword [rax]
call qword [rdx + 0x30]
jmp 0x1400c5a8c
mov eax, dword [rbx - 8]
cmp eax, 0xffffffff
jne 0x1400c5a56
mov rdx, qword [rsp + 0x48]
mov rax, qword [rcx]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, dword [rdx - 0x10]
call qword [rax + 0x28]
jmp 0x1400c5a8c
mov rax, qword [rsp + 0x48]
cmp rcx, qword [rax - 0x18]
je 0x1400c5a83
mov r10, qword [rcx]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, dword [rax - 0x10]
mov rdx, rax
call qword [r10 + 0x28]
jmp 0x1400c5a8c
lock inc dword [rax - 8]
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x40], rax
call fcn.140008400
mov r10, qword [rax]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9d, r15d
mov r8d, r15d
lea rdx, [0x140134230]
mov rcx, rax
call qword [r10 + 0x28]
mov rdi, rax
mov qword [rbp + 0x20], rax
call fcn.140008400
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x30]
mov qword [rsp + 0x50], rax
or dword [rbp + 0x130], 2
mov rbx, qword [rsp + 0x70]
mov r14d, dword [rdi - 0x10]
add r14d, dword [rbx - 0x10]
mov r9b, 1
xor r8d, r8d
mov edx, r14d
lea rcx, [rsp + 0x50]
call fcn.140033580
mov rsi, rax
movsxd r8, dword [rdi - 0x10]
add r8, r8
mov rdx, rdi
mov rcx, rax
call fcn.1400e1d70
movsxd r8, dword [rbx - 0x10]
add r8, r8
movsxd rcx, dword [rdi - 0x10]
lea rcx, [rsi + rcx*2]
mov rdx, rbx
call fcn.1400e1d70
mov rax, qword [rsp + 0x50]
cmp r14d, 0xffffffff
jne 0x1400c5b58
test rax, rax
je 0x1400c5b63
mov rdx, rax
nop dword [rax]
movzx ecx, word [rdx]
add rdx, 2
test cx, cx
jne 0x1400c5b40
sub rdx, rax
sar rdx, 1
lea r12d, [rdx - 1]
jmp 0x1400c5b63
movsxd rcx, r14d
mov word [rax + rcx*2], r12w
mov r12d, r14d
mov dword [rax - 0x10], r12d
mov ecx, dword [rax - 8]
cmp ecx, 0xffffffff
jne 0x1400c5b77
mov ecx, 1
xchg dword [rax - 8], ecx
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x40]
call fcn.140033880
nop
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c5bb9
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c5baf
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c5bb9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 0x20]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c5bea
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c5be0
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c5bea
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x40]
call fcn.140034d70
mov rax, qword [rsp + 0x40]
cmp dword [rax - 0x10], 0
jle 0x1400c5c20
mov rcx, qword [rbp + 0x138]
mov rax, qword [rcx]
xor r9d, r9d
lea r8, [rsp + 0x40]
lea rdx, str.Camera
call qword [rax + 0x40]
mov rax, qword [rsp + 0x40]
lea rdx, [rax - 0x18]
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c5c4d
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c5c43
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c5c4d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c5c7f
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c5c75
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400c5c7f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400c5cb0
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400c5ca6
lock xadd dword [rdx + 0x10], r15d
sub r15d, 1
jg 0x1400c5cb0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov bl, 1
jmp 0x1400c5cb6
xor bl, bl
lea rcx, [rbp - 0x18]
call fcn.14003f2b0
movzx eax, bl
add rsp, 0x1e8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret