Function at 0x102f0f80
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x103abe4d
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
mov eax, dword [0x1049b0c0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
lea ecx, [ebp - 0x28]
lea eax, [esi + 0x44]
push eax
call fcn.10050c50
add esi, 0x2c
mov dword [ebp - 4], 0
push esi
lea ecx, [ebp - 0x34]
call fcn.102efc70
mov eax, dword [esi + 4]
sub eax, dword [esi]
mov esi, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x34]
cmp eax, 1
jne 0x102f0fe2
cmp byte [ecx], 0xcc
jmp 0x102f0ff0
cmp eax, 2
jb 0x102f0ff6
cmp byte [ecx], 0xf3
jne 0x102f0ff6
cmp byte [ecx + 1], 0xc3
je 0x102f11c3
mov ebx, dword [ebp - 0x14]
lea ecx, [ebp - 0x28]
mov edi, dword [ebp - 0x18]
cmp ebx, 0x10
cmovae ecx, esi
cmp edi, 3
jne 0x102f1072
mov esi, edi
mov edx, 0x103d3898
sub esi, 4
jb 0x102f1027
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x102f102c
add ecx, 4
add edx, 4
sub esi, 4
jae 0x102f1016
cmp esi, 0xfffffffc
je 0x102f1060
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x102f1059
cmp esi, 0xfffffffd
je 0x102f1060
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x102f1059
cmp esi, 0xfffffffe
je 0x102f1060
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x102f1059
cmp esi, 0xffffffff
je 0x102f1060
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x102f1060
sbb eax, eax
or eax, 1
jmp 0x102f1062
xor eax, eax
mov esi, dword [ebp - 0x28]
test eax, eax
jne 0x102f1072
cmp byte [ebp + 0xc], al
je 0x102f11c3
cmp ebx, 0x10
lea ecx, [ebp - 0x28]
cmovae ecx, esi
cmp edi, 3
jne 0x102f10e7
mov esi, edi
mov edx, 0x103d3994
sub esi, 4
jb 0x102f10a1
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x102f10a6
add ecx, 4
add edx, 4
sub esi, 4
jae 0x102f1090
cmp esi, 0xfffffffc
je 0x102f10da
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x102f10d3
cmp esi, 0xfffffffd
je 0x102f10da
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x102f10d3
cmp esi, 0xfffffffe
je 0x102f10da
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x102f10d3
cmp esi, 0xffffffff
je 0x102f10da
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x102f10da
sbb eax, eax
or eax, 1
jmp 0x102f10dc
xor eax, eax
mov esi, dword [ebp - 0x28]
test eax, eax
je 0x102f11c3
cmp dword [ebp - 0x14], 0x10
lea ebx, [ebp - 0x28]
cmovae ebx, esi
cmp edi, 4
jb 0x102f1163
lea eax, [edi - 3]
add eax, ebx
sub eax, ebx
push eax
push 0x69
push ebx
call fcn.1034ca80
mov esi, eax
add esp, 0xc
test esi, esi
je 0x102f1160
nop
mov ecx, esi
mov edx, str.iret
mov eax, dword [ecx]
cmp eax, dword [edx]
je 0x102f1139
cmp al, byte [edx]
jne 0x102f113d
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x102f113d
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x102f113d
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x102f113d
xor eax, eax
jmp 0x102f1142
sbb eax, eax
or eax, 1
test eax, eax
je 0x102f11bc
lea eax, [edi - 3]
inc esi
add eax, ebx
sub eax, esi
push eax
push 0x69
push esi
call fcn.1034ca80
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x102f1110
mov esi, dword [ebp - 0x28]
xor bl, bl
mov edx, dword [ebp - 0x34]
test edx, edx
je 0x102f1195
mov ecx, dword [ebp - 0x2c]
mov eax, edx
sub ecx, edx
cmp ecx, 0x1000
jb 0x102f118b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x102f11ef
push ecx
push edx
call fcn.102fe83e
add esp, 8
mov eax, dword [ebp - 0x14]
cmp eax, 0x10
jb 0x102f11d1
lea ecx, [eax + 1]
mov eax, esi
cmp ecx, 0x1000
jb 0x102f11c7
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x102f11ef
jmp 0x102f11c7
sub esi, ebx
mov esi, dword [ebp - 0x28]
jne 0x102f1163
mov bl, 1
jmp 0x102f1165
push ecx
push esi
call fcn.102fe83e
add esp, 8
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.102fe398
mov esp, ebp
pop ebp
ret
call fcn.1034fc3d
int3