Function at 0x3861b1e0
Capabilities:
Check for software breakpoints

Disassembly:
je 0x3861b1ee
test dword [eax], 0x410000
jne 0x3861b5d7
cmp word [esi + 0xdc4c], 0
jne 0x3861b5d7
cmp dword [esi], 0x4550
jne 0x3861b5d7
mov eax, 0x14c
cmp word [esi + 4], ax
jne 0x3861b5d7
mov eax, 0x2000
test word [esi + 0x16], ax
jne 0x3861b5d7
movzx eax, word [esi + 0x400]
lea ebx, [esi + 0x400]
test ax, ax
je 0x3861b5d7
cmp al, 0xc3
je 0x3861b5d7
cmp al, 0xc2
je 0x3861b5d7
cmp al, 0xcc
je 0x3861b5d7
cmp al, 0x44
je 0x3861b5d7
mov eax, dword [esi + 0xdc6c]
cmp dword [eax + 0x2c0], 0
jne 0x3861b5d7
push 0x1000
push esi
call 0x37fb8c60
add esp, 8
test eax, eax
jne 0x3861b5d7
push eax
push 0x15447d18
push 0x319a69bd
push esi
call 0x37fb7080
add esp, 0x10
test eax, eax
je 0x3861b5d7
mov cl, byte [ebx]
mov edi, 0x15ff
cmp cl, 0x68
jne 0x3861b2db
mov eax, dword [esi + 0x401]
mov edx, dword [esi + 0x34]
cmp eax, edx
jbe 0x3861b2db
sub eax, edx
cmp eax, dword [esi + 0x50]
jae 0x3861b2db
cmp byte [esi + 0x405], 0xe8
je 0x3861b5d7
cmp word [esi + 0x405], di
je 0x3861b5d7
mov eax, 0x25ff
cmp word [esi + 0x33fa], ax
jne 0x3861b316
cmp dword [esi + 0x33fc], 0
jne 0x3861b316
cmp cl, 0x68
jne 0x3861b316
cmp dword [esi + 0x401], 0
jne 0x3861b316
cmp byte [esi + 0x405], 0xe8
jne 0x3861b316
cmp dword [esi + 0x406], 0xfffffff0
je 0x3861b5d7
mov eax, dword [ebx]
cmp eax, 0x18000
je 0x3861b5d7
cmp eax, 0x8102a000
je 0x3861b5d7
cmp eax, 0x95449464
je 0x3861b5d7
cmp eax, 0xd45bae52
je 0x3861b5d7
cmp cl, 0x90
jne 0x3861b36a
shr eax, 8
cmp al, 0x68
jne 0x3861b36a
cmp byte [esi + 0x406], 0xe8
je 0x3861b5d7
cmp word [esi + 0x406], di
je 0x3861b5d7
mov ecx, ebx
mov edx, 0x7bb9544
mov edi, 0xd
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x3861b391
add ecx, 4
add edx, 4
sub edi, 4
jae 0x3861b376
mov al, byte [ecx]
cmp al, byte [edx]
je 0x3861b5d7
mov eax, dword [ebx]
cmp eax, dword [0x7bb9558]
jne 0x3861b3c6
mov eax, dword [ebx + 4]
cmp eax, dword [0x7bb955c]
jne 0x3861b3c6
mov eax, dword [esi + 0x40c]
mov ecx, 0x7bb9560
cmp eax, dword [ecx]
jne 0x3861b3c6
movzx eax, word [esi + 0x410]
cmp ax, word [ecx + 4]
je 0x3861b5d7
cmp dword [esi + 0x149], 0x62726976
je 0x3861b5d7
push 0
push 0x520998ab
push 0x9ba18dfe
push esi
call 0x37fb7080
add esp, 0x10
test eax, eax
je 0x3861b40c
push 0
push 0x8bf7e190
push 0x9ba18dfe
push esi
call 0x37fb7080
add esp, 0x10
test eax, eax
jne 0x3861b5d7
push 0x400
push esi
push 0xc
push 0x7bb94f0
push esi
call 0x37e7fb30
add esp, 0x14
test eax, eax
je 0x3861b5d7
mov ecx, dword [esi + 0x38]
lea edx, [ecx - 1]
neg ecx
add edx, dword [esi + 0x94c9]
and edx, ecx
cmp edx, dword [esi + 0x50]
ja 0x3861b5d7
mov eax, dword [esi + 0x94cd]
sub eax, dword [esi + 0x28]
add eax, edx
cmp eax, 0x2000
ja 0x3861b460
cmp eax, 0x177
jb 0x3861b5d7
xor eax, eax
xor edi, edi
xor edx, edx
mov dword [ebp + 8], eax
mov dword [ebp - 4], eax
mov dword [ebp - 0xc], edx
nop
cmp edi, 0x163
jae 0x3861b517
lea ebx, [esi + 0x400]
add ebx, edi
movzx eax, byte [ebx]
movzx ecx, word [eax*2 + 0x742c5a8]
movzx eax, byte [ebx + 1]
movzx ecx, byte [ecx + eax + 0x742c7a8]
test ecx, ecx
jne 0x3861b4b9
push ebx
call 0x37e8df90
mov ecx, eax
add esp, 4
cmp ecx, 0xffffffff
je 0x3861b5d7
mov edx, dword [ebp - 0xc]
and ecx, 0xf
cmp dword [ebp + 8], 0
jne 0x3861b5d7
test byte [ebp - 4], 1
jne 0x3861b51f
movzx eax, byte [ebx]
add eax, 0xfffffff9
cmp eax, 0xf8
ja 0x3861b505
movzx eax, byte [eax + 0x7bb9cfc]
jmp dword [eax*4 + 0x7bb9cd8]
mov eax, dword [ebp + 8]
inc edx
add edi, ecx
mov dword [ebp - 0xc], edx
cmp edx, 0x19
jb 0x3861b470
test eax, eax
jne 0x3861b5d7
push 0x1000
lea edi, [esi + 0x3400]
push edi
push 0x20
push 0x7bb9500
push esi
call 0x37e7fb30
add esp, 0x14
test eax, eax
jne 0x3861b5d7
cmp byte [esi + 0x400], 0xe9
jne 0x3861b566
push 0x500
push edi
push 8
push 0x7bb9520
push esi
call 0x37e7fb30
add esp, 0x14
test eax, eax
jne 0x3861b5d7
cmp dword [esi + 0x94c1], 0x6974672e
jne 0x3861b6b1
cmp word [esi + 0x94c5], 0x6564
jne 0x3861b6b1
cmp dword [esi + 0x400], 0x81ec8b55
jne 0x3861b6b1
mov eax, 0x15ff
cmp word [esi + 0x423], ax
jne 0x3861b67c
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 8]
push eax
mov eax, dword [esi + 0x425]
sub eax, dword [esi + 0x34]
push eax
push esi
call 0x37fb6f90
add esp, 0x10
test eax, eax
jne 0x3861b6b1
cmp dword [ebp - 8], 0x1bb43d20
jne 0x3861b6b1
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
cmp word [esi + 0x426], ax
jne 0x3861b6b1
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 8]
push eax
mov eax, dword [esi + 0x428]
sub eax, dword [esi + 0x34]
push eax
push esi
call 0x37fb6f90
add esp, 0x10
test eax, eax
jne 0x3861b6b1
cmp dword [ebp - 8], 0x1bb43d20
je 0x3861b5d7
movzx eax, word [esi + 6]
cmp eax, 4
jne 0x3861b6f6
cmp word [esi + 0x9462], ax
jne 0x3861b768
cmp dword [esi + 0x94c1], 0
jne 0x3861b768
cmp dword [esi + 0x94c5], 0
jne 0x3861b768
cmp dword [esi + 0x400], 0x3eb609c
jne 0x3861b768
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 3
jne 0x3861b768
cmp word [esi + 0x9462], 1
jne 0x3861b768
cmp dword [esi + 0x94e5], 0x60000020
jne 0x3861b768
cmp dword [esi + 0x955d], 0x40000040
jne 0x3861b768
push 0x80000
push esi
mov dword [ebp + 8], 0
mov dword [ebp - 0xc], 0
call 0x37fb8c60
add esp, 8
test eax, eax
jne 0x3861b5d7
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0xc]
push eax
push 0
push 0
push esi
call 0x37fb93d0
add esp, 0x14
test eax, eax
jne 0x3861b5d7
cmp dword [ebp + 8], 0x40
je 0x3861b5d7
cmp word [esi + 6], 4
jne 0x3861b7e8
push 0x80000
push esi
mov dword [ebp + 8], 0
mov dword [ebp - 0xc], 0
call 0x37fb8c60
add esp, 8
test eax, eax
jne 0x3861b5d7
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0xc]
push eax
push 0
push 0
push esi
call 0x37fb93d0
add esp, 0x14
test eax, eax
jne 0x3861b5d7
cmp dword [ebp + 8], eax
je 0x3861b7e8
cmp dword [esi + 0x400], 0xe8e58955
jne 0x3861b7e8
cmp dword [esi + 0x404], 0xc
jne 0x3861b7e8
mov eax, 0xc35d
cmp word [esi + 0x408], ax
jne 0x3861b7e8
cmp dword [esi + 0x414], 0x6a54006a
je 0x3861b5d7
movzx eax, word [esi + 0x9462]
movzx edx, word [esi + 6]
cmp ax, dx
je 0x3861b80d
lea ecx, [edx - 1]
cmp eax, ecx
jne 0x3861b823
mov eax, dword [esi + 0x9545]
cmp eax, dword [esi + 0xa0]
jne 0x3861b823
cmp dword [esi + 0x9485], 0
jne 0x3861b823
cmp dword [esi + 0x9481], 0
je 0x3861b5d7
mov al, byte [esi + 0x400]
cmp al, 0x68
jne 0x3861b846
cmp byte [esi + 0x405], 0xc3
jne 0x3861b846
cmp dword [esi + 0x401], 0x12345678
je 0x3861b5d7
cmp edx, 2
jb 0x3861b5d7
cmp al, 0xe9
jne 0x3861b8ca
mov ecx, dword [esi + 0x401]
test ecx, ecx
jle 0x3861b8ca
mov eax, dword [esi + 0x28]
add ecx, 0xffffffea
add eax, ecx
push eax
push esi
call 0x37ea3270
add esp, 8
test eax, eax
je 0x3861b8ca
mov ecx, dword [esi + 0xdc14]
cmp ecx, 0x1b
jb 0x3861b8ca
add ecx, 0xffffffe5
cmp eax, ecx
ja 0x3861b8ca
push 0x1b
lea edi, [esi + 0x1400]
push edi
push eax
push esi
call 0x37e6b7f0
add esp, 0x10
cmp eax, 0x1b
jne 0x3861b8ca
mov ecx, 0x7bb9528
lea edx, [eax - 4]
mov eax, dword [edi]
cmp eax, dword [ecx]
jne 0x3861b8ca
add edi, 4
add ecx, 4
sub edx, 4
jae 0x3861b8a5
mov ax, word [edi]
cmp ax, word [ecx]
jne 0x3861b8ca
mov al, byte [edi + 2]
cmp al, byte [ecx + 2]
je 0x3861b5d7
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret