Function at 0x1006afa0
Capabilities:
Inspect section memory permissions

Disassembly:
push 0xd8
mov eax, 0x101a52a7
call fcn.1017516e
mov dword [ebp - 0xd4], edx
mov edi, ecx
and dword [ebp - 0xc0], 0
lea edx, [ebp - 0xc0]
call fcn.100134ab
mov esi, dword [ebp - 0xc0]
mov ebx, eax
xor eax, eax
test ebx, ebx
cmovs esi, eax
mov dword [ebp - 0xc0], esi
test esi, esi
je 0x1006aff4
mov esi, dword [esi]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
push dword [ebp - 0xc0]
call dword [esi + 0x20]
xor eax, eax
push 0x2d
pop esi
cmp dword [edi + 0x24], eax
jne 0x1006b304
cmp dword [edi + 0x28], eax
jne 0x1006b304
lea edx, [ebp - 0xc4]
mov dword [edi + 0x28], 1
mov dword [ebp - 0xc4], eax
call fcn.100216e7
mov ebx, eax
test ebx, ebx
js 0x1006b304
mov dword [ebp - 0xa4], 0x3212
mov eax, dword [ebp - 0xa4]
xor eax, 0x7b
mov word [ebp - 0xa0], ax
mov eax, dword [ebp - 0xa4]
inc eax
push 0x35
pop ebx
xor eax, ebx
mov word [ebp - 0x9e], ax
mov eax, dword [ebp - 0xa4]
add eax, 2
xor eax, 0x44
mov word [ebp - 0x9c], ax
mov eax, dword [ebp - 0xa4]
add eax, 3
xor eax, 0x42
mov word [ebp - 0x9a], ax
mov eax, dword [ebp - 0xa4]
add eax, 4
xor eax, 0x45
mov word [ebp - 0x98], ax
mov eax, dword [ebp - 0xa4]
add eax, 5
xor eax, 0x34
mov word [ebp - 0x96], ax
mov eax, dword [ebp - 0xa4]
add eax, 6
push 0x30
pop edx
xor eax, edx
mov word [ebp - 0x94], ax
mov eax, dword [ebp - 0xa4]
add eax, 7
push 0x31
pop ecx
xor eax, ecx
mov word [ebp - 0x92], ax
mov eax, dword [ebp - 0xa4]
add eax, 8
xor eax, ebx
mov word [ebp - 0x90], ax
mov eax, dword [ebp - 0xa4]
add eax, 9
xor eax, esi
mov word [ebp - 0x8e], ax
mov eax, dword [ebp - 0xa4]
add eax, 0xa
xor eax, ecx
mov word [ebp - 0x8c], ax
mov eax, dword [ebp - 0xa4]
add eax, 0xb
xor eax, ebx
mov word [ebp - 0x8a], ax
mov eax, dword [ebp - 0xa4]
add eax, 0xc
xor eax, ecx
mov word [ebp - 0x88], ax
mov eax, dword [ebp - 0xa4]
add eax, 0xd
xor eax, 0x38
mov word [ebp - 0x86], ax
mov eax, dword [ebp - 0xa4]
add eax, 0xe
xor eax, esi
mov word [ebp - 0x84], ax
mov eax, dword [ebp - 0xa4]
add eax, 0xf
xor eax, 0x34
mov word [ebp - 0x82], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x10
xor eax, 0x32
mov word [ebp - 0x80], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x11
xor eax, 0x65
mov word [ebp - 0x7e], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x12
xor eax, edx
mov word [ebp - 0x7c], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x13
xor eax, esi
mov word [ebp - 0x7a], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x14
xor eax, 0x39
mov word [ebp - 0x78], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x15
xor eax, ebx
mov word [ebp - 0x76], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x16
xor eax, 0x42
mov word [ebp - 0x74], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x17
xor eax, 0x44
mov word [ebp - 0x72], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x18
xor eax, esi
mov word [ebp - 0x70], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x19
xor eax, 0x32
mov word [ebp - 0x6e], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x1a
xor eax, 0x41
mov word [ebp - 0x6c], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x1b
xor eax, 0x36
mov word [ebp - 0x6a], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x1c
xor eax, 0x45
mov word [ebp - 0x68], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x1d
xor eax, 0x39
mov word [ebp - 0x66], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x1e
xor eax, 0x37
mov word [ebp - 0x64], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x1f
xor eax, edx
mov word [ebp - 0x62], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x20
xor eax, 0x46
mov word [ebp - 0x60], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x21
xor eax, ecx
mov word [ebp - 0x5e], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x22
xor eax, 0x44
mov word [ebp - 0x5c], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x23
xor eax, 0x37
mov word [ebp - 0x5a], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x24
xor eax, edx
mov word [ebp - 0x58], ax
mov eax, dword [ebp - 0xa4]
add eax, 0x25
xor eax, 0x7d
mov word [ebp - 0x56], ax
xor eax, eax
mov word [ebp - 0x54], ax
mov ax, word [ebp - 0xa0]
mov eax, dword [ebp - 0xc4]
mov esi, dword [eax]
lea ecx, [ebp - 0xa4]
lea eax, [ebp - 0xe4]
push eax
push 4
lea eax, [ebp - 0xcc]
push eax
call fcn.100576d1
push eax
push dword [ebp - 0xc4]
call dword [esi + 0x14]
mov ebx, eax
test ebx, ebx
js 0x1006b304
mov eax, dword [ebp - 0xcc]
mov dword [edi + 0x24], eax
cmp dword [edi + 0x24], 0
je 0x1006b313
push dword [edi + 0x24]
call dword [sym.imp.KERNEL32.dll_Sleep]
and dword [ebp - 0xc8], 0
lea eax, [ebp - 0xc8]
mov dword [ebp - 0xd0], eax
lea ecx, [ebp - 0xdc]
lea eax, [ebp - 0xd0]
push eax
call fcn.1005787a
pop ecx
and dword [ebp - 4], 0
call fcn.10134910
mov esi, eax
test esi, esi
je 0x1006b8e4
lea eax, [edi + 0x38]
xor ebx, ebx
cmp dword [eax + 0x14], 0x10
mov dword [eax + 0x10], ebx
jb 0x1006b35c
mov eax, dword [eax]
mov byte [eax], bl
mov eax, dword [edi + 0x10]
cmp dword [eax + 0x14], 0x10
jb 0x1006b369
mov eax, dword [eax]
push eax
push 0x2712
push esi
call fcn.10139210
add esp, 0xc
test dword [ebp + 8], 0x10000000
je 0x1006b38e
push 1
push 0x2d
push esi
call fcn.10139210
add esp, 0xc
cmp dword [ebp + 8], ebx
jge 0x1006b630
mov dword [ebp - 0x50], 0x71
mov eax, dword [ebp - 0x50]
push 0x38
pop edx
xor eax, edx
mov byte [ebp - 0x4c], al
mov eax, dword [ebp - 0x50]
inc al
push 0x2e
pop ecx
xor eax, ecx
mov byte [ebp - 0x4b], al
mov eax, dword [ebp - 0x50]
add al, 2
xor eax, edx
mov byte [ebp - 0x4a], al
mov eax, dword [ebp - 0x50]
add al, 3
xor eax, ecx
mov byte [ebp - 0x49], al
mov eax, dword [ebp - 0x50]
add al, 4
xor eax, edx
mov byte [ebp - 0x48], al
mov eax, dword [ebp - 0x50]
add al, 5
xor eax, ecx
mov byte [ebp - 0x47], al
mov eax, dword [ebp - 0x50]
add al, 6
xor eax, edx
mov byte [ebp - 0x46], al
mov eax, dword [ebp - 0x50]
add al, 7
xor eax, 0x2c
mov byte [ebp - 0x45], al
mov eax, dword [ebp - 0x50]
add al, 8
push 0x31
pop edx
xor eax, edx
mov byte [ebp - 0x44], al
mov eax, dword [ebp - 0x50]
add al, 9
xor eax, ecx
mov byte [ebp - 0x43], al
mov eax, dword [ebp - 0x50]
add al, 0xa
xor eax, edx
mov byte [ebp - 0x42], al
mov eax, dword [ebp - 0x50]
add al, 0xb
xor eax, ecx
mov byte [ebp - 0x41], al
mov eax, dword [ebp - 0x50]
add al, 0xc
xor eax, edx
mov byte [ebp - 0x40], al
mov eax, dword [ebp - 0x50]
add al, 0xd
xor eax, ecx
mov byte [ebp - 0x3f], al
mov eax, dword [ebp - 0x50]
add al, 0xe
xor eax, edx
mov byte [ebp - 0x3e], al
mov eax, dword [ebp - 0x50]
add al, 0xf
xor eax, 0x2c
mov byte [ebp - 0x3d], al
mov eax, dword [ebp - 0x50]
add al, 0x10
push 0x39
pop edx
xor eax, edx
mov byte [ebp - 0x3c], al
mov eax, dword [ebp - 0x50]
add al, 0x11
xor eax, ecx
mov byte [ebp - 0x3b], al
mov eax, dword [ebp - 0x50]
add al, 0x12
xor eax, edx
mov byte [ebp - 0x3a], al
mov eax, dword [ebp - 0x50]
add al, 0x13
xor eax, ecx
mov byte [ebp - 0x39], al
mov eax, dword [ebp - 0x50]
add al, 0x14
xor eax, edx
mov byte [ebp - 0x38], al
mov eax, dword [ebp - 0x50]
add al, 0x15
xor eax, ecx
mov byte [ebp - 0x37], al
mov eax, dword [ebp - 0x50]
add al, 0x16
xor eax, edx
mov byte [ebp - 0x36], al
mov eax, dword [ebp - 0x50]
add al, 0x17
xor eax, 0x2c
mov byte [ebp - 0x35], al
mov eax, dword [ebp - 0x50]
add al, 0x18
xor eax, 0x36
mov byte [ebp - 0x34], al
mov eax, dword [ebp - 0x50]
add al, 0x19
push 0x34
pop edx
xor eax, edx
mov byte [ebp - 0x33], al
mov eax, dword [ebp - 0x50]
add al, 0x1a
xor eax, ecx
mov byte [ebp - 0x32], al
mov eax, dword [ebp - 0x50]
add al, 0x1b
xor eax, 0x36
mov byte [ebp - 0x31], al
mov eax, dword [ebp - 0x50]
add al, 0x1c
xor eax, ecx
mov byte [ebp - 0x30], al
mov eax, dword [ebp - 0x50]
add al, 0x1d
xor eax, 0x36
mov byte [ebp - 0x2f], al
mov eax, dword [ebp - 0x50]
add al, 0x1e
xor eax, edx
mov byte [ebp - 0x2e], al
mov eax, dword [ebp - 0x50]
add al, 0x1f
xor eax, ecx
mov byte [ebp - 0x2d], al
mov eax, dword [ebp - 0x50]
add al, 0x20
xor eax, 0x36
mov byte [ebp - 0x2c], al
mov eax, dword [ebp - 0x50]
add al, 0x21
xor eax, 0x2c
mov byte [ebp - 0x2b], al
mov eax, dword [ebp - 0x50]
add al, 0x22
xor eax, 0x38
mov byte [ebp - 0x2a], al
mov eax, dword [ebp - 0x50]
add al, 0x23
xor eax, ecx
mov byte [ebp - 0x29], al
mov eax, dword [ebp - 0x50]
add al, 0x24
xor eax, 0x38
mov byte [ebp - 0x28], al
mov eax, dword [ebp - 0x50]
add al, 0x25
xor eax, ecx
mov byte [ebp - 0x27], al
mov eax, dword [ebp - 0x50]
add al, 0x26
xor eax, edx
mov byte [ebp - 0x26], al
mov eax, dword [ebp - 0x50]
add al, 0x27
xor eax, ecx
mov byte [ebp - 0x25], al
mov eax, dword [ebp - 0x50]
add al, 0x28
xor eax, edx
mov byte [ebp - 0x24], al
mov eax, dword [ebp - 0x50]
add al, 0x29
xor eax, 0x2c
mov byte [ebp - 0x23], al
mov eax, dword [ebp - 0x50]
add al, 0x2a
xor eax, 0x31
mov byte [ebp - 0x22], al
mov eax, dword [ebp - 0x50]
add al, 0x2b
xor eax, ecx
mov byte [ebp - 0x21], al
mov eax, dword [ebp - 0x50]
add al, 0x2c
xor eax, 0x30
mov byte [ebp - 0x20], al
mov eax, dword [ebp - 0x50]
add al, 0x2d
xor eax, ecx
mov byte [ebp - 0x1f], al
mov eax, dword [ebp - 0x50]
add al, cl
xor eax, 0x30
mov byte [ebp - 0x1e], al
mov eax, dword [ebp - 0x50]
add al, 0x2f
xor eax, ecx
mov byte [ebp - 0x1d], al
mov eax, dword [ebp - 0x50]
add al, 0x30
xor eax, 0x31
mov byte [ebp - 0x1c], al
mov eax, dword [ebp - 0x50]
add al, 0x31
xor eax, 0x2c
mov byte [ebp - 0x1b], al
mov eax, dword [ebp - 0x50]
add al, 0x32
xor eax, 0x36
mov byte [ebp - 0x1a], al
mov eax, dword [ebp - 0x50]
add al, 0x33
xor eax, edx
mov byte [ebp - 0x19], al
mov eax, dword [ebp - 0x50]
add al, dl
xor eax, ecx
mov byte [ebp - 0x18], al
mov eax, dword [ebp - 0x50]
add al, 0x35
xor eax, 0x36
mov byte [ebp - 0x17], al
mov eax, dword [ebp - 0x50]
add al, 0x36
xor eax, ecx
mov byte [ebp - 0x16], al
mov eax, dword [ebp - 0x50]
add al, 0x37
xor eax, 0x36
mov byte [ebp - 0x15], al
mov eax, dword [ebp - 0x50]
add al, 0x38
xor eax, 0x35
mov byte [ebp - 0x14], al
mov eax, dword [ebp - 0x50]
add al, 0x39
xor eax, ecx
mov byte [ebp - 0x13], al
mov eax, dword [ebp - 0x50]
add al, 0x3a
mov byte [ebp - 0x11], bl
xor eax, 0x36
lea ecx, [ebp - 0x50]
mov byte [ebp - 0x12], al
mov al, byte [ebp - 0x4c]
call fcn.1005769a
push eax
push 0x27e3
push esi
call fcn.10139210
add esp, 0xc
jmp 0x1006b6ec
test dword [ebp + 8], 0x8000000
je 0x1006b6ec
cmp dword [edi + 0x70], ebx
je 0x1006b6ec
cmp dword [edi + 0x74], ebx
je 0x1006b6ec
mov dword [ebp - 0xac], ebx
mov dword [ebp - 0xa8], ebx
mov dword [ebp - 0xac], ebx
mov dword [ebp - 0xa8], 0xf
mov byte [ebp - 0xbc], bl
mov byte [ebp - 4], 1
lea eax, [ebp - 0xbc]
push dword [edi + 0x74]
push dword [edi + 0x70]
push eax
call fcn.10055cc1
mov ebx, eax
test ebx, ebx
js 0x1006b6bb
cmp dword [ebp - 0xa8], 0x10
lea eax, [ebp - 0xbc]
cmovae eax, dword [ebp - 0xbc]
xor ebx, ebx
push eax
push ebx
call fcn.10134b70
mov dword [ebp - 0xc8], eax
pop ecx
pop ecx
test eax, eax
jne 0x1006b6cf
mov ebx, 0xe0010003
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xbc]
call fcn.10017221
jmp 0x1006b900
push eax
push 0x27db
push esi
call fcn.10139210
add esp, 0xc
mov byte [ebp - 4], bl
lea ecx, [ebp - 0xbc]
call fcn.10017221
test dword [ebp + 8], 0x20000000
je 0x1006b704
push 1
push 0x2c
push esi
call fcn.10139210
add esp, 0xc
jmp 0x1006b728
push 0x1006aa78
push 0x4e2b
push esi
call fcn.10139210
push dword [ebp - 0xd4]
push 0x2711
push esi
call fcn.10139210
add esp, 0x18
push 1
push 0x34
push esi
call fcn.10139210
add esp, 0xc
cmp dword [edi + 0x20], ebx
je 0x1006b766
push ebx
push 0x2b
push esi
call fcn.10139210
push 0x10055ef9
push 0x4e58
push esi
call fcn.10139210
push dword [edi + 0x20]
push 0x2749
push esi
call fcn.10139210
add esp, 0x24
jmp 0x1006b773
push 1
push 0x2b
push esi
call fcn.10139210
add esp, 0xc
cmp dword [edi + 8], 0
je 0x1006b77e
push dword [edi + 8]
jmp 0x1006b77f
push ebx
push 0x2727
push esi
call fcn.10139210
mov eax, dword [edi + 0x1c]
add esp, 0xc
test eax, eax
je 0x1006b79f
cmp dword [eax + 0x14], 0x10
jb 0x1006b79c
mov eax, dword [eax]
push eax
jmp 0x1006b7a0
push ebx
push 0x2720
push esi
call fcn.10139210
mov eax, dword [edi + 0xc]
add esp, 0xc
test eax, eax
je 0x1006b7c0
cmp dword [eax + 0x14], 0x10
jb 0x1006b7bd
mov eax, dword [eax]
push eax
jmp 0x1006b7c1
push ebx
push 0x2722
push esi
call fcn.10139210
mov eax, dword [edi + 0x14]
add esp, 0xc
test eax, eax
je 0x1006b7e1
cmp dword [eax + 0x14], 0x10
jb 0x1006b7de
mov eax, dword [eax]
push eax
jmp 0x1006b7e2
push ebx
push 0x27bd
push esi
call fcn.10139210
mov eax, dword [edi + 0x18]
add esp, 0xc
test eax, eax
je 0x1006b802
cmp dword [eax + 0x14], 0x10
jb 0x1006b7ff
mov eax, dword [eax]
push eax
jmp 0x1006b803
push ebx
push 0x27be
push esi
call fcn.10139210
add esp, 0xc
cmp dword [edi + 0x2c], 0
je 0x1006b828
push dword [edi + 0x2c]
push 0x2728
push esi
call fcn.10139210
add esp, 0xc
push ebx
push 0x2751
push esi
call fcn.10139210
push ebx
push 0x2771
push esi
call fcn.10139210
add esp, 0x18
cmp dword [edi + 0x34], ebx
je 0x1006b887
push 0x10056381
push 0x4e8c
push esi
call fcn.10139210
push dword [edi + 0x34]
push 0x277d
push esi
call fcn.10139210
push 0x1006adc0
push 0x4f57
push esi
call fcn.10139210
push edi
push 0x2848
push esi
call fcn.10139210
add esp, 0x30
jmp 0x1006b89c
push ebx
push 0x40
push esi
call fcn.10139210
push ebx
push 0x51
push esi
call fcn.10139210
add esp, 0x18
push 0x78
push 0xd
push esi
call fcn.10139210
push 0xf0
push 0x4e
push esi
call fcn.10139210
add esp, 0x18
test dword [ebp + 8], 0x40000000
push esi
je 0x1006b8cb
mov ecx, edi
call fcn.1006ae13
mov ebx, eax
jmp 0x1006b8dd
call fcn.10134950
mov ebx, eax
pop ecx
test ebx, ebx
je 0x1006b8dd
or ebx, 0xe0028000
push esi
call fcn.101348f0
pop ecx
mov esi, dword [ebp - 0xc0]
test esi, esi
je 0x1006b900
mov esi, dword [esi]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
push dword [ebp - 0xc0]
call dword [esi + 0x24]
or dword [ebp - 4], 0xffffffff
cmp byte [ebp - 0xdc], 0
jne 0x1006b918
lea ecx, [ebp - 0xd8]
call fcn.10057a72
mov eax, ebx
call fcn.10175118
ret 4