Function at 0x1005bc90
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
mov ebx, edx
mov eax, ecx
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x10], ebx
mov dword [ebp - 8], eax
xor esi, esi
mov dword [ebp - 0xc], ecx
jmp 0x1005bcb0
test ebx, ebx
js 0x1005bcbe
add eax, ebx
cmp ecx, eax
jae 0x1005c122
mov al, byte [ecx]
mov byte [ebp - 1], al
test al, al
je 0x1005c122
push ecx
call sym.glib_2.dll_g_utf8_get_char
mov ebx, eax
add esp, 4
cmp ebx, 0x2faff
ja 0x1005bd14
shr eax, 8
mov ecx, 0x2710
movzx eax, word [eax*2 + 0x100a2dc8]
cmp ax, cx
movsx ecx, ax
jl 0x1005bd01
sub ecx, 0x2710
mov dword [ebp - 0x14], ecx
jmp 0x1005bd5e
movzx eax, bl
shl ecx, 8
movsx ecx, byte [ecx + eax + 0x100a33c0]
mov dword [ebp - 0x14], ecx
jmp 0x1005bd5e
lea eax, [ebx - 0xe0000]
cmp eax, 0x2ffff
ja 0x1005bd57
shr eax, 8
mov ecx, 0x2710
movzx eax, word [eax*2 + 0x100ad878]
cmp ax, cx
movsx ecx, ax
jl 0x1005bd44
sub ecx, 0x2710
mov dword [ebp - 0x14], ecx
jmp 0x1005bd5e
movzx eax, bl
shl ecx, 8
movsx eax, byte [ecx + eax + 0x100a33c0]
mov dword [ebp - 0x14], eax
jmp 0x1005bd5e
mov dword [ebp - 0x14], 2
movzx eax, byte [ebp - 1]
mov ecx, dword [ebp - 0xc]
movsx eax, byte [eax + 0x100b8928]
mov edx, ecx
add ecx, eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x18], edx
mov dword [ebp - 0xc], ecx
cmp eax, 1
jne 0x1005bde5
cmp ebx, 0x49
jne 0x1005bf17
push ecx
call sym.glib_2.dll_g_utf8_get_char
add esp, 4
cmp eax, 0x307
jne 0x1005bdc0
test edi, edi
je 0x1005bda5
lea eax, [esi + edi]
test eax, eax
je 0x1005bda5
mov byte [eax], 0x69
mov ecx, dword [ebp - 0xc]
mov ebx, dword [ebp - 0x10]
movzx eax, byte [ecx]
inc esi
movsx eax, byte [eax + 0x100b8928]
add ecx, eax
mov eax, dword [ebp - 8]
jmp 0x1005bca8
test edi, edi
je 0x1005bdc9
lea eax, [esi + edi]
jmp 0x1005bdcb
xor eax, eax
test eax, eax
je 0x1005bdd4
mov word [eax], 0xb1c4
mov ecx, dword [ebp - 0xc]
mov ebx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
add esi, 2
jmp 0x1005bcb0
cmp eax, 2
jne 0x1005bf17
cmp ebx, 0xcc
je 0x1005be6e
cmp ebx, 0xcd
je 0x1005be6e
cmp ebx, 0x128
je 0x1005be6e
cmp ebx, 0x49
je 0x1005be1c
cmp ebx, 0x4a
je 0x1005be1c
cmp ebx, 0x12e
jne 0x1005bf17
call fcn.1005bbf0
test eax, eax
je 0x1005bf11
test edi, edi
je 0x1005be32
lea eax, [esi + edi]
jmp 0x1005be34
xor eax, eax
push eax
push ebx
call sym.glib_2.dll_g_unichar_tolower
add esp, 4
push eax
call sym.glib_2.dll_g_unichar_to_utf8
add esp, 8
add esi, eax
test edi, edi
je 0x1005be52
lea eax, [esi + edi]
jmp 0x1005be54
xor eax, eax
test eax, eax
je 0x1005be5d
mov word [eax], 0x87cc
mov ecx, dword [ebp - 0xc]
mov ebx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
add esi, 2
jmp 0x1005bcb0
test edi, edi
je 0x1005be7c
lea eax, [esi + edi]
test eax, eax
je 0x1005be7c
mov byte [eax], 0x69
inc esi
test edi, edi
je 0x1005be86
lea eax, [esi + edi]
jmp 0x1005be88
xor eax, eax
test eax, eax
je 0x1005be91
mov word [eax], 0x87cc
add esi, 2
sub ebx, 0xcc
je 0x1005beef
dec ebx
je 0x1005becd
mov eax, dword [ebp - 8]
sub ebx, 0x5b
mov ebx, dword [ebp - 0x10]
jne 0x1005bcb0
test edi, edi
je 0x1005beb7
lea eax, [esi + edi]
jmp 0x1005beb9
xor eax, eax
test eax, eax
je 0x1005bec2
mov word [eax], 0x83cc
mov eax, dword [ebp - 8]
add esi, 2
jmp 0x1005bcb0
test edi, edi
je 0x1005bed6
lea eax, [esi + edi]
jmp 0x1005bed8
xor eax, eax
test eax, eax
je 0x1005bee1
mov word [eax], 0x81cc
mov ebx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
add esi, 2
jmp 0x1005bcb0
test edi, edi
je 0x1005bef8
lea eax, [esi + edi]
jmp 0x1005befa
xor eax, eax
test eax, eax
je 0x1005bf03
mov word [eax], 0x80cc
mov ebx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
add esi, 2
jmp 0x1005bcb0
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0xc]
cmp ebx, 0x3a3
jne 0x1005bfde
mov ebx, dword [ebp - 0x10]
test ebx, ebx
js 0x1005bf37
mov eax, dword [ebp - 8]
add eax, ebx
cmp ecx, eax
jae 0x1005bfb7
cmp byte [ecx], 0
je 0x1005bfb7
push ecx
call sym.glib_2.dll_g_utf8_get_char
mov edx, eax
add esp, 4
cmp edx, 0x2faff
ja 0x1005bf6f
shr eax, 8
movzx eax, word [eax*2 + 0x100a2dc8]
mov ecx, 0x2710
cmp ax, cx
movsx ecx, ax
jl 0x1005bf89
sub ecx, 0x2710
jmp 0x1005bf9e
lea eax, [edx - 0xe0000]
cmp eax, 0x2ffff
ja 0x1005bf99
shr eax, 8
movzx eax, word [eax*2 + 0x100ad878]
jmp 0x1005bf5a
movzx eax, dl
shl ecx, 8
movsx ecx, byte [ecx + eax + 0x100a33c0]
jmp 0x1005bf9e
mov ecx, 2
mov eax, 1
shl eax, cl
and eax, 0x3e0
neg eax
sbb eax, eax
neg eax
add eax, 0x3c2
jmp 0x1005bfbc
mov eax, 0x3c2
test edi, edi
je 0x1005bfc5
lea ecx, [esi + edi]
jmp 0x1005bfc7
xor ecx, ecx
push ecx
push eax
call sym.glib_2.dll_g_unichar_to_utf8
mov ecx, dword [ebp - 0xc]
add esp, 8
add esi, eax
mov eax, dword [ebp - 8]
jmp 0x1005bcb0
mov ecx, dword [ebp - 0x14]
mov eax, 1
shl eax, cl
test eax, 0x300
je 0x1005c0f6
mov eax, ebx
shr eax, 8
cmp eax, 0x2fa
ja 0x1005c009
movsx edx, word [eax*2 + 0x100aab78]
jmp 0x1005c011
movsx edx, word [eax*2 + 0x100a0ae8]
cmp edx, 0x2710
jne 0x1005c04c
xor edx, edx
cmp ecx, 8
jne 0x1005c0cc
xor ecx, ecx
xor eax, eax
jmp 0x1005c030
cmp dword [eax + 0x100a1e38], ebx
je 0x1005c0c2
add eax, 0xc
inc ecx
cmp eax, 0x174
jb 0x1005c030
jmp 0x1005c0cc
cmp eax, 0x2fa
ja 0x1005c05d
movsx edx, word [eax*2 + 0x100aab78]
jmp 0x1005c065
movsx edx, word [eax*2 + 0x100a0ae8]
shl edx, 8
movzx eax, bl
add edx, eax
mov edx, dword [edx*4 + 0x100ade78]
cmp edx, 0x1000000
jb 0x1005c01b
test edi, edi
je 0x1005c088
lea eax, [esi + edi]
mov dword [ebp - 0x14], eax
jmp 0x1005c08f
mov dword [ebp - 0x14], 0
lea edx, [edx + 0xf0b8358]
cmp ecx, 8
je 0x1005c0a6
movzx eax, byte [edx]
movsx eax, byte [eax + 0x100b8928]
add edx, eax
mov ebx, edx
lea ecx, [ebx + 1]
jmp 0x1005c0b0
mov al, byte [ebx]
inc ebx
test al, al
jne 0x1005c0b0
mov eax, dword [ebp - 0x14]
sub ebx, ecx
test eax, eax
je 0x1005c112
jmp 0x1005c107
lea eax, [ecx + ecx*2]
mov edx, dword [eax*4 + 0x100a1e40]
test edi, edi
je 0x1005c0d5
lea eax, [esi + edi]
jmp 0x1005c0d7
xor eax, eax
test edx, edx
push eax
cmovne ebx, edx
push ebx
call sym.glib_2.dll_g_unichar_to_utf8
mov ecx, dword [ebp - 0xc]
mov ebx, dword [ebp - 0x10]
add esp, 8
add esi, eax
mov eax, dword [ebp - 8]
jmp 0x1005bcb0
movzx eax, byte [edx]
movsx ebx, byte [eax + 0x100b8928]
test edi, edi
je 0x1005c112
lea eax, [esi + edi]
push ebx
push edx
push eax
call fcn.100a0c1c
add esp, 0xc
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
add esi, ebx
mov ebx, dword [ebp - 0x10]
jmp 0x1005bcb0
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret