Function at 0x100070b0
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
push esi
mov esi, dword [ebp + 0xc]
mov ecx, 0x1003f378
call fcn.1000e93d
mov edx, dword [ebp + 8]
xorps xmm0, xmm0
movups xmmword [esi], xmm0
xor cl, cl
mov dword [ebp - 0x10], 0x1003b008
movq qword [esi + 0x10], xmm0
mov ch, 0x10
mov byte [ebp - 8], cl
mov dword [esi + 0x18], 0
push ebx
mov bl, byte [edx]
inc edx
movzx eax, bl
sub eax, 0x26
cmp eax, 0xcd
ja case.0x100070ff.39
movzx eax, byte [eax + 0x10007640]
jmp dword [eax*4 + 0x10007624]
mov byte [esi + 1], bl
or cl, 4
jmp 0x10007134
mov byte [esi + 1], bl
or cl, 2
jmp 0x10007134
mov byte [esi + 2], bl
or cl, 0x20
jmp 0x10007134
mov byte [esi + 3], bl
or cl, 0x40
jmp 0x10007134
mov byte [esi + 4], bl
or cl, 8
jmp 0x10007134
mov byte [esi + 5], bl
or cl, 0x10
add ch, 0xff
jne 0x100070e8
push edi
movzx edi, cl
shl edi, 0x17
test cl, cl
movzx eax, cl
mov ecx, 1
cmovne ecx, eax
mov dword [ebp - 0x14], edi
mov dword [esi + 0x18], edi
mov bh, cl
mov byte [esi + 6], bl
cmp bl, 0xf
jne 0x1000716c
mov bl, byte [edx]
inc edx
mov byte [esi + 7], bl
mov dword [ebp - 0x10], 0x1003b052
jmp 0x10007185
cmp bl, 0xa0
jb 0x10007185
mov bh, cl
cmp bl, 0xa3
ja 0x10007185
test cl, 0x10
je 0x10007182
or bh, 8
jmp 0x10007185
and bh, 0xf7
movzx ecx, bl
mov eax, ecx
mov dword [ebp - 0x1c], ecx
shr eax, 2
mov dword [ebp - 0x20], eax
and ecx, 0x80000003
jns 0x100071a0
dec ecx
or ecx, 0xfffffffc
inc ecx
mov edi, dword [ebp - 0x10]
mov dword [ebp - 0x24], ecx
movzx eax, byte [eax + edi]
add eax, ecx
mov ecx, edi
mov edi, dword [ebp - 0x14]
mov cl, byte [eax + ecx]
mov dword [ebp - 0xc], ecx
cmp cl, 0xff
jne 0x100071e5
mov eax, dword [ebp - 0x1c]
or edi, 0x3000
xor cl, cl
mov dword [ebp - 0x14], edi
and eax, 0xfffffffd
mov dword [esi + 0x18], edi
mov dword [ebp - 0xc], ecx
cmp eax, 0x24
jne 0x100071e5
mov al, 1
mov dword [ebp - 0x14], edi
mov dword [ebp - 0xc], eax
mov byte [ebp - 0x18], cl
jmp 0x10007203
mov byte [ebp - 0x18], 0
test cl, cl
jns 0x10007203
movzx eax, cl
mov ecx, dword [ebp - 0x10]
and eax, 0x7f
movzx eax, word [eax + ecx]
mov dword [ebp - 0xc], eax
shr eax, 8
mov dword [ebp - 0x18], eax
mov al, byte [esi + 7]
mov byte [ebp - 3], al
test al, al
je 0x10007234
mov eax, dword [ebp - 0x20]
mov esi, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x14]
mov edi, ecx
movzx eax, byte [eax + str.JJJJKRJJJJOLJJJJJJJJUE_JJJEYMFJ_JJJJJJJJJJJJJJacgNJJkmJJEmJJDEJJ]
test byte [eax + esi + str.JJJJKRJJJJOLJJJJJJJJUE_JJJEYMFJ_JJJJJJJJJJJJJJacgNJJkmJJEmJJDEJJ], bh
mov esi, dword [ebp + 0xc]
je 0x10007234
or edi, 0x3000
mov dword [esi + 0x18], edi
mov ecx, dword [ebp - 0xc]
test cl, 1
je 0x10007525
or edi, 1
mov dword [esi + 0x18], edi
mov cl, byte [edx]
mov al, cl
mov byte [esi + 8], cl
shr al, 6
mov byte [ebp - 2], al
mov byte [esi + 9], al
mov al, cl
shr cl, 3
and al, 7
and cl, 7
mov byte [ebp - 1], al
cmp byte [ebp - 0x18], 0
mov byte [esi + 0xb], al
mov byte [ebp + 0xf], cl
mov byte [esi + 0xa], cl
mov dword [ebp - 0x14], edi
je 0x1000728f
mov eax, dword [ebp - 0x18]
movzx eax, al
shl eax, cl
mov dword [ebp - 0x14], edi
test al, al
jns 0x1000728f
or edi, 0x3000
mov dword [esi + 0x18], edi
jmp 0x10007292
mov edi, dword [ebp - 0x14]
mov ch, byte [ebp - 3]
mov eax, edi
test ch, ch
jne 0x100072df
cmp bl, 0xd9
jb 0x100072df
cmp bl, 0xdf
ja 0x100072df
mov al, bl
movzx ecx, cl
add al, 0x27
cmp byte [ebp - 2], 3
movzx eax, al
jne 0x100072c1
mov ch, byte [ecx + eax*8 + 0x1003b100]
mov cl, byte [ebp - 1]
jmp 0x100072cc
mov al, byte [eax + 0x1003b0f9]
mov byte [ebp - 4], al
mov ch, al
shl ch, cl
mov eax, edi
test ch, ch
mov ch, byte [ebp - 3]
jns 0x100072df
or eax, 0x3000
mov dword [esi + 0x18], eax
test bh, 0x20
je 0x10007334
cmp byte [ebp - 2], 3
jne 0x100072f4
or eax, 0x9000
mov dword [esi + 0x18], eax
jmp 0x10007334
mov ah, bl
test ch, ch
jne 0x10007309
and ah, 0xfe
mov edi, 0x1003b1c1
mov ecx, 0x1003b1a9
jmp 0x10007313
mov edi, 0x1003b1d3
mov ecx, 0x1003b1c1
mov al, byte [ecx]
inc ecx
cmp al, ah
je 0x10007321
inc ecx
cmp ecx, edi
jne 0x10007313
jmp 0x1000732d
movzx eax, byte [ecx]
mov cl, byte [ebp + 0xf]
shl eax, cl
test al, al
jns 0x10007334
or dword [esi + 0x18], 0x9000
mov cl, byte [ebp - 3]
mov edi, dword [ebp - 0x1c]
test cl, cl
je 0x10007385
lea eax, [edi - 0x20]
cmp eax, 3
ja case.default.0x10007346
jmp dword [eax*4 + 0x10007710]
mov al, byte [ebp + 0xf]
mov byte [ebp - 2], 3
cmp al, 4
ja case.0x100073ef.197
cmp al, 1
jne case.0x100073ef.81
jmp case.0x100073ef.197
mov al, byte [ebp + 0xf]
mov byte [ebp - 2], 3
cmp al, 4
je case.0x100073ef.197
cmp al, 5
jne case.0x100073ef.81
jmp case.0x100073ef.197
mov eax, edi
sub eax, 0x8c
je 0x1000740f
sub eax, 2
je 0x10007404
cmp byte [ebp - 2], 3
jne 0x100073da
test cl, cl
je 0x100073ad
mov edi, 0x1003b20c
mov ecx, 0x1003b1e2
jmp 0x100073b7
mov edi, 0x1003b1e2
mov ecx, 0x1003b1d3
mov al, byte [ecx]
inc ecx
cmp al, bl
je 0x100073c7
add ecx, 2
cmp ecx, edi
jne 0x100073b7
jmp case.0x100073ef.81
test byte [ecx], bh
je case.0x100073ef.81
movzx eax, byte [ecx + 1]
mov cl, byte [ebp + 0xf]
shl eax, cl
test al, al
jns case.0x100073ef.197
jmp case.0x100073ef.81
test cl, cl
je case.0x100073ef.81
lea eax, [edi - 0x50]
cmp eax, 0xa7
ja case.0x100073ef.81
movzx eax, byte [eax + 0x10007730]
jmp dword [eax*4 + 0x10007720]
test bh, 9
jne case.0x100073ef.197
jmp case.0x100073ef.81
test bh, 6
jne case.0x100073ef.197
jmp case.0x100073ef.81
mov al, byte [ebp + 0xf]
cmp al, 1
je case.0x100073ef.197
cmp al, 5
jmp 0x10007413
cmp byte [ebp + 0xf], 5
jbe case.0x100073ef.81
or dword [esi + 0x18], 0x11000
mov cl, byte [edx + 1]
add edx, 2
cmp byte [ebp + 0xf], 1
ja 0x10007441
cmp bl, 0xf6
jne 0x10007434
mov eax, dword [ebp - 0xc]
or al, 2
jmp 0x1000743e
cmp bl, 0xf7
jne 0x10007441
mov eax, dword [ebp - 0xc]
or al, 0x10
mov dword [ebp - 0xc], eax
mov bl, byte [ebp - 2]
mov edi, 4
mov ch, byte [ebp - 1]
movzx eax, bl
sub eax, 0
je 0x10007473
sub eax, 1
je 0x1000746d
sub eax, 1
jne 0x10007496
mov byte [ebp - 8], 2
test bh, 0x10
jne 0x10007496
mov byte [ebp - 8], 4
jmp 0x10007496
mov byte [ebp - 8], 1
jmp 0x10007496
test bh, 0x10
je 0x10007487
cmp ch, 6
setne al
sub al, 1
and eax, 0xffffff02
jmp 0x10007493
mov eax, dword [ebp - 8]
cmp ch, 5
movzx eax, al
cmove eax, edi
mov dword [ebp - 8], eax
cmp bl, 3
je 0x100074d8
cmp ch, 4
jne 0x100074d8
test bh, 0x10
jne 0x100074d8
or dword [esi + 0x18], 2
mov al, cl
shr al, 6
inc edx
mov byte [esi + 0xd], al
mov al, cl
shr al, 3
and al, 7
mov byte [esi + 0xc], cl
and cl, 7
mov byte [esi + 0xe], al
mov eax, dword [ebp - 8]
mov byte [esi + 0xf], cl
cmp cl, 5
jne 0x100074db
test bl, 1
movzx eax, al
cmove eax, edi
jmp 0x100074db
mov eax, dword [ebp - 8]
movzx ecx, al
dec edx
mov eax, ecx
sub eax, 1
je 0x10007515
sub eax, 1
je 0x10007503
sub eax, 2
jne 0x1000751e
or dword [esi + 0x18], 0x80
mov eax, dword [edx]
add edx, ecx
mov ecx, dword [ebp - 0xc]
mov dword [esi + 0x14], eax
jmp 0x10007533
or dword [esi + 0x18], 0x40
mov ax, word [edx]
add edx, ecx
mov ecx, dword [ebp - 0xc]
mov word [esi + 0x14], ax
jmp 0x10007533
or dword [esi + 0x18], 0x20
mov al, byte [edx]
mov byte [esi + 0x14], al
add edx, ecx
mov ecx, dword [ebp - 0xc]
jmp 0x10007533
test bh, 0x20
je 0x10007533
or edi, 0x9000
mov dword [esi + 0x18], edi
pop edi
test cl, 0x10
je 0x10007586
and bh, 8
test cl, 0x40
je 0x1000755f
test bh, bh
je 0x100075da
or dword [esi + 0x18], 0x108
mov ax, word [edx]
add edx, 2
mov word [esi + 0x10], ax
jmp 0x100075fd
mov eax, dword [esi + 0x18]
test bh, bh
je 0x10007578
or eax, 8
mov dword [esi + 0x18], eax
mov ax, word [edx]
add edx, 2
mov word [esi + 0x10], ax
jmp 0x10007586
or eax, 0x10
mov dword [esi + 0x18], eax
mov eax, dword [edx]
add edx, 4
mov dword [esi + 0x10], eax
test cl, 4
je 0x100075c6
mov eax, dword [esi + 0x18]
test al, 0x10
je 0x100075a1
or eax, 8
mov dword [esi + 0x18], eax
mov ax, word [edx]
mov word [esi + 0x14], ax
jmp 0x100075c3
test al, 8
je 0x100075b6
or eax, 0x800
mov dword [esi + 0x18], eax
mov ax, word [edx]
mov word [esi + 0x14], ax
jmp 0x100075c3
or eax, 8
mov dword [esi + 0x18], eax
mov ax, word [edx]
mov word [esi + 0x10], ax
add edx, 2
test cl, 2
je 0x100075d5
or dword [esi + 0x18], 4
mov al, byte [edx]
inc edx
mov byte [esi + 0x10], al
test cl, 0x40
je 0x100075eb
or dword [esi + 0x18], 0x110
mov eax, dword [edx]
add edx, 4
mov dword [esi + 0x10], eax
jmp 0x100075fd
test cl, 0x20
je 0x100075fd
or dword [esi + 0x18], 0x104
mov al, byte [edx]
inc edx
mov byte [esi + 0x10], al
sub dl, byte [ebp + 8]
mov byte [esi], dl
pop ebx
cmp dl, 0xf
jbe 0x1000761c
or dword [esi + 0x18], 0x5000
mov al, 0xf
mov byte [esi], 0xf
movzx eax, al
pop esi
mov esp, ebp
pop ebp
ret
movzx eax, dl
pop esi
mov esp, ebp
pop ebp
ret