Function at 0x6369d0
Capabilities:
Check for software breakpoints

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x6d8518
push eax
mov dword fs:[0], esp
push ebx
push esi
push edi
mov esi, ecx
mov dword [esp + 0x14], 0
call fcn.00633960
cmp al, 1
je 0x636cce
cmp byte [esi + 0x28], 1
je 0x636cce
call fcn.00633db0
cmp al, 1
je 0x636cce
lea ecx, [esp + 0x1c]
call fcn.0061dc40
movsx edi, ax
mov al, byte [esi + 5]
add edi, 4
cmp al, 1
jne 0x636a3c
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x2c]
add eax, edi
cmp eax, ecx
jge 0x636cce
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 0x2c]
lea eax, [ecx + edi]
cmp eax, edx
jl 0x636bdd
cmp edi, ecx
jge 0x636a7d
mov bl, byte [esi + 0x30]
mov eax, dword [esi + 8]
cmp bl, 1
jne 0x636a6b
add eax, edi
cmp byte [eax], 0x55
jne 0x636a78
cmp byte [eax + 1], 0xcc
je 0x636a7d
jmp 0x636a78
add eax, edi
cmp byte [eax], 0x55
jne 0x636a78
cmp byte [eax + 1], 0xaa
je 0x636a7d
inc edi
cmp edi, ecx
jl 0x636a54
push edx
call fcn.006a6832
mov dword [eax], 0
mov edx, dword [esi + 0xc]
add esp, 4
xor ecx, ecx
test edx, edx
jle 0x636aa8
mov edx, dword [esi + 8]
inc ecx
mov dl, byte [edx + ecx - 1]
mov byte [eax + ecx - 1], dl
mov edx, dword [esi + 0xc]
cmp ecx, edx
jl 0x636a95
mov ecx, dword [esi + 8]
mov dword [ecx], 0
mov edx, dword [esi + 0xc]
xor ecx, ecx
cmp edi, edx
jge 0x636acc
mov ebx, dword [esi + 8]
mov dl, byte [eax + edi]
inc edi
mov byte [ebx + ecx], dl
mov edx, dword [esi + 0xc]
inc ecx
cmp edi, edx
jl 0x636aba
push eax
mov dword [esi + 0xc], ecx
call fcn.006a64d0
mov eax, dword [esp + 0x24]
add esp, 4
cmp eax, 1
jne 0x636b5f
mov edx, dword [esi + 8]
mov eax, dword [esi + 0xc]
mov byte [edx + eax], 0x55
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
inc eax
mov dword [esi + 0xc], eax
mov byte [eax + ecx], 0xaa
mov ebx, dword [esi + 0xc]
inc ebx
lea ecx, [esp + 0x1c]
mov dword [esi + 0xc], ebx
call fcn.0061dc40
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
add al, 3
xor edi, edi
mov byte [edx + ecx], al
mov edx, dword [esi + 0xc]
inc edx
lea ecx, [esp + 0x1c]
mov dword [esi + 0xc], edx
call fcn.0061dc40
test ax, ax
jle 0x636cce
push edi
lea ecx, [esp + 0x20]
call fcn.0061daa0
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
mov byte [edx + ecx], al
mov edx, dword [esi + 0xc]
inc edx
lea ecx, [esp + 0x1c]
mov dword [esi + 0xc], edx
inc edi
call fcn.0061dc40
movsx edx, ax
cmp edi, edx
jl 0x636b2f
jmp 0x636cce
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0xc]
mov byte [eax + ecx], 0x55
mov eax, dword [esi + 0xc]
mov edx, dword [esi + 8]
inc eax
mov dword [esi + 0xc], eax
lea ecx, [esp + 0x1c]
mov byte [eax + edx], 0xbb
mov ebx, dword [esi + 0xc]
inc ebx
mov dword [esi + 0xc], ebx
call fcn.0061dc40
mov ecx, dword [esi + 8]
mov edx, dword [esi + 0xc]
add al, 3
xor edi, edi
mov byte [ecx + edx], al
mov edx, dword [esi + 0xc]
inc edx
lea ecx, [esp + 0x1c]
mov dword [esi + 0xc], edx
call fcn.0061dc40
test ax, ax
jle 0x636cce
push edi
lea ecx, [esp + 0x20]
call fcn.0061daa0
mov ecx, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov byte [ecx + edx], al
mov ebx, dword [esi + 0xc]
inc ebx
lea ecx, [esp + 0x1c]
mov dword [esi + 0xc], ebx
inc edi
call fcn.0061dc40
movsx eax, ax
cmp edi, eax
jl 0x636bad
jmp 0x636cce
cmp dword [esp + 0x20], 1
jne 0x636c5c
mov edx, dword [esi + 8]
mov byte [ecx + edx], 0x55
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
inc eax
mov dword [esi + 0xc], eax
mov byte [eax + ecx], 0xaa
mov ebx, dword [esi + 0xc]
inc ebx
lea ecx, [esp + 0x1c]
mov dword [esi + 0xc], ebx
call fcn.0061dc40
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
add al, 3
xor edi, edi
mov byte [edx + ecx], al
mov edx, dword [esi + 0xc]
inc edx
lea ecx, [esp + 0x1c]
mov dword [esi + 0xc], edx
call fcn.0061dc40
test ax, ax
jle 0x636cce
push edi
lea ecx, [esp + 0x20]
call fcn.0061daa0
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
mov byte [edx + ecx], al
mov edx, dword [esi + 0xc]
inc edx
lea ecx, [esp + 0x1c]
mov dword [esi + 0xc], edx
inc edi
call fcn.0061dc40
movsx edx, ax
cmp edi, edx
jl 0x636c2f
jmp 0x636cce
mov eax, dword [esi + 8]
mov byte [ecx + eax], 0x55
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
inc eax
mov dword [esi + 0xc], eax
mov byte [eax + ecx], 0xbb
mov ebx, dword [esi + 0xc]
inc ebx
lea ecx, [esp + 0x1c]
mov dword [esi + 0xc], ebx
call fcn.0061dc40
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
add al, 3
xor edi, edi
mov byte [edx + ecx], al
mov edx, dword [esi + 0xc]
inc edx
lea ecx, [esp + 0x1c]
mov dword [esi + 0xc], edx
call fcn.0061dc40
test ax, ax
jle 0x636cce
push edi
lea ecx, [esp + 0x20]
call fcn.0061daa0
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0xc]
mov byte [edx + ecx], al
mov edx, dword [esi + 0xc]
inc edx
lea ecx, [esp + 0x1c]
mov dword [esi + 0xc], edx
inc edi
call fcn.0061dc40
movsx edx, ax
cmp edi, edx
jl 0x636ca3
lea ecx, [esp + 0x1c]
mov dword [esp + 0x14], 0xffffffff
call fcn.0061d8c0
mov ecx, dword [esp + 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
add esp, 0xc
ret 8