Function at 0xbbeae2
Capabilities:
Check for software breakpoints
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x48
push dword [ebp + 8]
call fcn.00bcea74
add esp, 0x10
test eax, eax
je 0xbbfacb
push esi
push esi
push 0x2000
push 0x66000
call fcn.00bcf63c
add esp, 0x10
test eax, eax
mov esi, eax
je 0xbbeb1d
cmp eax, 0x1f
ja 0xbbeb34
call fcn.00bcda03
cmp dword [0x33c34], 0
jne 0xbbfacb
jmp 0xbbfac1
mov dword [ebp - 0x10], 0
jmp 0xbbebc3
lea ebx, [edx + 0x66000]
test bl, 3
jne 0xbbebbd
mov ecx, esi
sub ecx, edx
cmp ecx, 0xb
jbe 0xbbebbd
cmp dword [edx + 0x66000], 0x1badb002
jne 0xbbebbd
mov eax, dword [ebx + 8]
add eax, dword [edx + 0x66004]
cmp eax, 0xe4524ffe
jne 0xbbebbd
mov eax, dword [edx + 0x66004]
test eax, 0x10000
je 0xbbeb82
cmp ecx, 0x1f
jbe 0xbbebbd
test al, 4
je 0xbbeb8b
cmp ecx, 0x2f
jbe 0xbbebbd
mov ebx, dword [ebx + 4]
mov dword [ebp - 0x34], ebx
test word [ebp - 0x34], 0xfff8
jne 0xbbeba9
mov dword [ebp - 0x38], 1
mov dword [ebp - 0x28], 0x29cfa
jmp 0xbbec0a
call fcn.00bcda03
mov dword [0x33c34], 0xa
jmp 0xbbfacb
lea eax, [edx + 1]
mov dword [ebp - 0x10], eax
mov edx, dword [ebp - 0x10]
cmp edx, esi
jb 0xbbeb40
jmp 0xbbfad4
push ebx
push ebx
push 0x29d04
push 0x66008
call fcn.00bcbaac
add esp, 0x10
test eax, eax
je 0xbbebf5
cmp dword [ebp + 0x10], 5
jne 0xbbed66
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x28], 0
cmp esi, 0x34
jbe 0xbbed7b
cmp byte [0x66006], 1
sete dl
xor eax, eax
cmp byte [0x66005], 1
sete al
and eax, edx
cmp word [0x66010], 2
sete dl
and eax, edx
cmp word [0x66012], 3
sete dl
and eax, edx
cmp dword [0x66014], 1
sete dl
and eax, edx
cmp dword [0x66000], 0x464c457f
sete dl
cmp byte [0x66004], 1
sete cl
and edx, ecx
test eax, edx
je 0xbbed7b
cmp dword [ebp - 0x38], 1
jne 0xbbec7f
mov eax, dword [0x66018]
jmp 0xbbec89
mov eax, dword [0x66018]
and eax, 0xffffff
mov dword [0x40994], eax
cmp dword [0x40994], 0xfffff
ja 0xbbeca4
mov dword [0x33c34], 7
mov ecx, dword [0x6601c]
test ecx, ecx
je 0xbbeccb
mov eax, dword [0x6602c]
test ax, ax
je 0xbbeccb
movzx edx, word [0x6602a]
movzx eax, ax
imul eax, edx
add eax, ecx
cmp eax, esi
jb 0xbbecd5
mov dword [0x33c34], 0xd
cmp dword [ebp - 0x38], 0
je 0xbbecfe
xor ebx, ebx
xor esi, esi
mov edx, 0x29d0c
mov dword [ebp - 0x40], 1
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
jmp 0xbbf468
cmp dword [ebp + 0x10], 5
jne 0xbbed35
xor ebx, ebx
xor esi, esi
mov edx, 0x29d0c
mov dword [ebp - 0x40], 1
mov dword [ebp - 0x38], 5
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0x29d10
jmp 0xbbf468
xor ebx, ebx
xor esi, esi
mov edx, 0x29d0c
mov dword [ebp - 0x40], 1
mov dword [ebp - 0x38], 4
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0x29d04
jmp 0xbbf468
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x28], 0
test dword [ebp - 0x34], 0x10000
je 0xbbee2c
mov edx, dword [ebp - 0x10]
add edx, 0x66000
mov eax, dword [edx + 0x1c]
mov esi, dword [edx + 0x10]
mov dword [0x40994], eax
mov eax, esi
sub eax, dword [edx + 0xc]
add eax, dword [ebp - 0x10]
cmp dword [edx + 0x14], 0
mov dword [0x33268], esi
mov dword [0x40c48], eax
jne 0xbbedbf
mov eax, dword [0x40c08]
add eax, esi
mov dword [edx + 0x14], eax
cmp dword [edx + 0x18], 0
mov eax, dword [edx + 0x14]
jne 0xbbedcb
mov dword [edx + 0x18], eax
mov ecx, dword [edx + 0xc]
mov edi, dword [edx + 0x18]
mov ebx, dword [edx + 0x14]
mov edx, dword [edx + 0x10]
cmp ecx, edx
jb 0xbbedea
cmp ebx, edx
jbe 0xbbedea
cmp edi, ebx
jb 0xbbedea
sub ecx, edx
cmp ecx, dword [ebp - 0x10]
jbe 0xbbedf4
mov dword [0x33c34], 0xd
cmp esi, 0xfffff
ja 0xbbee06
mov dword [0x33c34], 7
sub eax, esi
mov esi, edi
sub esi, ebx
mov edx, 0x29d17
mov ebx, 2
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x40], 1
mov dword [ebp - 0x2c], 0
jmp 0xbbf468
cmp esi, 0x20
je 0xbbef84
mov ecx, dword [0x66000]
movzx edx, cx
lea eax, [edx - 0x107]
cmp eax, 1
jbe 0xbbee8e
cmp edx, 0x10b
je 0xbbee8e
cmp edx, 0xcc
je 0xbbee8e
shr ecx, 8
mov eax, ecx
mov edx, ecx
and eax, 0xff00
shr edx, 0x10
or edx, eax
cmp edx, 0x107
je 0xbbee8e
cmp edx, 0x108
je 0xbbee8e
cmp edx, 0x10b
je 0xbbee8e
cmp edx, 0xcc
jne 0xbbef84
mov eax, dword [0x66014]
cmp dword [ebp - 0x38], 0
mov dword [ebp - 0x40], 1
mov dword [0x40994], eax
jne 0xbbef09
and eax, 0xffffff
cmp byte [0x66000], 0xb
mov dword [0x40994], eax
jne 0xbbeed6
cmp byte [0x66001], 1
jne 0xbbeed6
mov dword [0x33268], eax
mov dword [ebp - 0x38], 4
mov dword [ebp - 0x28], 0x29d04
jmp 0xbbef09
and eax, 0xf00000
cmp word [0x66000], 0x108
mov dword [0x33268], eax
je 0xbbeef4
mov dword [ebp - 0x40], 0
jmp 0xbbeefb
mov dword [ebp - 0x40], 1
mov dword [ebp - 0x38], 5
mov dword [ebp - 0x28], 0x29d10
mov edx, dword [0x66000]
mov ecx, 0x1000
movzx eax, dx
cmp eax, 0x10b
je 0xbbef42
cmp eax, 0xcc
je 0xbbef40
shr edx, 8
mov cx, 0x20
mov eax, edx
and eax, 0xff00
shr edx, 0x10
or edx, eax
cmp edx, 0x10b
jne 0xbbef42
xor ecx, ecx
mov eax, dword [0x66004]
mov edx, dword [0x66008]
cmp dword [0x33268], 0xfffff
mov dword [0x40c48], ecx
mov esi, dword [0x6600c]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
ja 0xbbef75
mov dword [0x33c34], 7
mov ebx, 1
mov edx, 0x29d1e
jmp 0xbbf468
cmp word [0x661fe], 0xaa55
jne 0xbbf443
mov cl, byte [0x661f1]
cmp cl, 0x40
ja 0xbbf443
cmp dword [0x66202], 0x53726448
jne 0xbbf04d
mov bx, word [0x66206]
cmp bx, 0x1ff
jbe 0xbbf04d
mov eax, dword [0x40ae0]
mov edi, 1
mov dl, byte [0x66211]
mov byte [0x66210], 0x71
shl eax, 0xa
sub eax, 0x9100
and edi, edx
cmp eax, 0x90000
mov dword [0xba61], eax
jbe 0xbbeffb
mov dword [0xba61], 0x90000
cmp bx, 0x200
jbe 0xbbf014
or edx, 0xffffff80
mov word [0x66224], 0x8e00
mov byte [0x66211], dl
cmp word [0x66206], 0x201
jbe 0xbbf030
mov eax, dword [0xba61]
add eax, 0x9000
mov dword [0x66228], eax
jmp 0xbbf072
mov word [0x66020], 0xa33f
mov word [0x66022], 0x9000
mov word [0x66212], 0x9100
jmp 0xbbf072
mov ebx, 4
xor edi, edi
mov word [0x66020], 0xa33f
mov word [0x66022], 0x9000
mov dword [0xba61], 0x90000
jmp 0xbbf07e
test cl, cl
mov ebx, 4
je 0xbbf07e
movzx ebx, cl
mov eax, ebx
shl eax, 9
mov dword [ebp - 0x2c], eax
mov eax, dword [0x40c08]
sub eax, dword [ebp - 0x2c]
lea edx, [eax - 0x200]
add eax, 0xffe00
test edi, edi
mov dword [ebp - 0x30], edx
mov dword [0xba5d], eax
jne 0xbbf0df
mov eax, dword [0xba61]
sub eax, 0x10000
cmp edx, eax
jbe 0xbbf0df
sub esp, 0xc
xor ebx, ebx
push 0x29d24
xor esi, esi
call fcn.00bcbda1
xor edx, edx
add esp, 0x10
mov dword [0x33c34], 0x1c
mov dword [ebp - 0x40], 1
jmp 0xbbf468
mov edx, dword [0xba61]
mov eax, dword [0x40ae0]
add edx, 0x9100
shl eax, 0xa
cmp edx, eax
jbe 0xbbf106
mov dword [0x33c34], 0x1c
jmp 0xbbf401
cmp dword [0x32624], 0
jle 0xbbf131
test edi, edi
mov eax, 0x29d58
jne 0xbbf11d
mov eax, 0x29d59
push dword [ebp - 0x30]
push dword [ebp - 0x2c]
push eax
push 0x29d60
call fcn.00bcbda1
add esp, 0x10
push ecx
push ecx
push 0x29d86
push dword [ebp + 0xc]
call fcn.00bcc252
add esp, 0x10
test eax, eax
je 0xbbf1d2
push edx
add eax, 4
push 0
push eax
push 0x29d8b
mov dword [ebp - 0x18], eax
call fcn.00bcc56a
add esp, 0x10
test eax, eax
jg 0xbbf16f
mov dword [ebp - 0x14], 0xffff
jmp 0xbbf1c9
push eax
push 0
push dword [ebp - 0x18]
push 0x29f51
call fcn.00bcc56a
add esp, 0x10
test eax, eax
jg 0xbbf18f
mov dword [ebp - 0x14], 0xfffe
jmp 0xbbf1c9
push eax
push 0
push dword [ebp - 0x18]
push 0x29d92
call fcn.00bcc56a
add esp, 0x10
test eax, eax
jg 0xbbf1af
mov dword [ebp - 0x14], 0xfffd
jmp 0xbbf1c9
push eax
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.00bcc5bc
add esp, 0x10
test eax, eax
je 0xbbf471
mov eax, dword [ebp - 0x14]
mov word [0x661fa], ax
push eax
push eax
push 0x2ad87
push dword [ebp + 0xc]
call fcn.00bcc252
add esp, 0x10
test eax, eax
je 0xbbf292
push esi
add eax, 4
push esi
push 0x3389c
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.00bcc5bc
mov eax, dword [0x33c34]
add esp, 0x10
test eax, eax
je 0xbbf21f
cmp eax, 0x23
jne 0xbbf27c
mov dword [0x3389c], 0x38000000
jmp 0xbbf286
mov eax, dword [ebp - 0x18]
sub esp, 0xc
movsx eax, byte [eax]
push eax
call fcn.00bcb9fa
add esp, 0x10
cmp eax, 0x6b
je 0xbbf244
cmp eax, 0x6d
je 0xbbf24f
xor ecx, ecx
cmp eax, 0x67
jne 0xbbf257
jmp 0xbbf248
xor eax, eax
jmp 0xbbf254
mov eax, 0xa
jmp 0xbbf251
xor eax, eax
add eax, 0xa
lea ecx, [eax + 0xa]
mov edx, dword [0x3389c]
or eax, 0xffffffff
shr eax, cl
cmp edx, eax
jbe 0xbbf272
mov dword [0x3389c], 0x38000000
jmp 0xbbf29c
shl edx, cl
mov dword [0x3389c], edx
jmp 0xbbf29c
mov dword [0x3389c], 0
mov dword [0x33c34], 0
jmp 0xbbf29c
mov dword [0x3389c], 0
mov esi, dword [ebp - 0x2c]
mov eax, dword [0xba5d]
add esi, 0x200
cmp esi, 0x2000
ja 0xbbf2c1
push ecx
push esi
push 0x66000
push eax
call fcn.00bcc311
jmp 0xbbf2ef
push edx
push 0x2000
push 0x66000
push eax
call fcn.00bcc311
mov eax, dword [ebp - 0x2c]
mov edx, dword [0xba5d]
pop ecx
pop ecx
sub eax, 0x1e00
add edx, 0x2000
push eax
push edx
call fcn.00bcf63c
add esp, 0x10
cmp dword [0x66202], 0x53726448
jne 0xbbf309
cmp word [0x66206], 0x1ff
ja 0xbbf32c
mov edx, 0x3f
sub edx, ebx
lea eax, [ebx + 1]
push ecx
shl edx, 9
shl eax, 9
add eax, dword [0xba5d]
push edx
push 0
push eax
call fcn.00bcc47e
add esp, 0x10
push eax
push eax
push dword [ebp + 0xc]
push 0
call fcn.00bccc60
mov ebx, dword [0xba5d]
add esp, 0x10
add ebx, 0x9000
mov edx, eax
jmp 0xbbf34f
mov byte [ebx], al
inc edx
inc ebx
mov eax, dword [0xba5d]
add eax, 0x90ff
cmp ebx, eax
jae 0xbbf363
mov al, byte [edx]
test al, al
jne 0xbbf34b
push eax
push eax
push 0x2ad87
push dword [ebp + 0xc]
call fcn.00bcc252
add esp, 0x10
test eax, eax
jne 0xbbf3ce
test byte [ebp + 0x14], 1
jne 0xbbf3ce
cmp word [0x66206], 0x202
ja 0xbbf3ce
mov eax, dword [0xba5d]
lea edx, [ebx + 0xf]
add eax, 0x90ff
cmp edx, eax
jae 0xbbf3ce
mov byte [ebx], 0x20
lea edx, [ebx + 5]
mov byte [ebx + 1], 0x6d
mov byte [ebx + 2], 0x65
mov byte [ebx + 3], 0x6d
mov byte [ebx + 4], 0x3d
mov eax, dword [0x40af0]
push ecx
add eax, 0x400
push eax
push 0x75
push edx
call fcn.00bcb948
add esp, 0x10
mov byte [eax], 0x4b
lea ebx, [eax + 1]
mov byte [ebx], 0
mov eax, dword [0xba5d]
push edx
push edx
push dword [ebp - 0x30]
add eax, 0x9100
mov dword [0x40c48], esi
mov dword [0x33268], eax
push 0x100000
call fcn.00bcf63c
add esp, 0x10
cmp dword [0x33c34], 0
je 0xbbf40c
xor ebx, ebx
mov dword [ebp - 0x40], 1
jmp 0xbbf464
call fcn.00bcda03
cmp dword [ebp + 0x10], 0
je 0xbbf42b
test edi, edi
je 0xbbf421
cmp dword [ebp + 0x10], 3
jmp 0xbbf425
cmp dword [ebp + 0x10], 2
jne 0xbbfac1
mov eax, dword [ebp - 0x30]
cmp edi, 1
sbb edx, edx
add edx, 3
mov dword [ebp - 0x38], edx
mov dword [0xba59], eax
jmp 0xbbfae6
mov dword [0x33c34], 0xd
xor ebx, ebx
mov dword [ebp - 0x40], 1
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
xor esi, esi
xor edx, edx
cmp dword [0x33c34], 0
je 0xbbf47b
call fcn.00bcda03
jmp 0xbbfacb
mov eax, dword [ebp + 0xc]
and dword [0x40a88], 0xffffffc7
mov dword [0x40a9c], 0
mov dword [0x40a98], eax
mov eax, dword [0x33010]
mov dword [0x40aa0], 0
mov dword [0x40aa4], 0
mov dword [0x40aa8], 0
shl eax, 0x18
or eax, dword [0x40d34]
cmp dword [0x32624], 0
mov dword [0x40aac], 0
mov dword [0x40a94], eax
mov dword [0x40ab0], 0
jle 0xbbf4f4
push eax
push edx
push dword [ebp - 0x28]
push 0x29d96
call fcn.00bcbda1
add esp, 0x10
test ebx, ebx
je 0xbbf786
mov ebx, dword [ebp - 0x34]
and ebx, 0x10000
je 0xbbf50e
mov eax, 0x29da0
jmp 0xbbf513
mov eax, 0x2b715
cmp dword [0x32624], 0
jle 0xbbf533
push dword [ebp - 0x30]
push eax
push dword [0x33268]
push 0x29daa
call fcn.00bcbda1
add esp, 0x10
push eax
push eax
push dword [ebp - 0x30]
push dword [0x33268]
call fcn.00bcf63c
add esp, 0x10
cmp eax, dword [ebp - 0x30]
jne 0xbbf619
add eax, dword [0x33268]
test ebx, ebx
mov dword [0x33268], eax
jne 0xbbf5dd
cmp dword [ebp - 0x40], 0
je 0xbbf575
add eax, 0xfff
and eax, 0xfffff000
mov dword [0x33268], eax
jmp 0xbbf58e
cmp dword [0x32624], 0
jle 0xbbf58e
sub esp, 0xc
push 0x29dc7
call fcn.00bcbda1
add esp, 0x10
cmp dword [0x32624], 0
jle 0xbbf5a9
push eax
push eax
push dword [ebp - 0x2c]
push 0x29dcb
call fcn.00bcbda1
add esp, 0x10
push eax
push eax
push dword [ebp - 0x2c]
push dword [0x33268]
call fcn.00bcf63c
add esp, 0x10
cmp eax, dword [ebp - 0x2c]
je 0xbbf5d4
cmp dword [0x33c34], 0
jne 0xbbf5d4
mov dword [0x33c34], 0xd
mov edx, dword [ebp - 0x2c]
add dword [0x33268], edx
cmp dword [0x33c34], 0
jne 0xbbf62c
push eax
push esi
push 0
push dword [0x33268]
call fcn.00bcc47e
add esp, 0x10
add dword [0x33268], esi
cmp dword [0x32624], 0
jle 0xbbf62c
push eax
push eax
push esi
push 0x29dd7
call fcn.00bcbda1
add esp, 0x10
jmp 0xbbf62c
cmp dword [0x33c34], 0
jne 0xbbf62c
mov dword [0x33c34], 0xd
cmp dword [0x33c34], 0
jne 0xbbfa5b
mov edx, dword [0x66010]
test edx, edx
je 0xbbfa5b
mov eax, dword [0x40c08]
sub eax, dword [0x40c48]
cmp edx, eax
jae 0xbbfa5b
cmp dword [ebp - 0x40], 0
mov ebx, dword [0x33268]
je 0xbbf676
lea eax, [ebx + 0xfff]
and eax, 0xfffff000
mov dword [0x33268], eax
mov eax, dword [0x33268]
mov dword [0x40aac], eax
mov dword [eax], edx
add eax, 4
cmp dword [0x32624], 0
mov dword [0x33268], eax
jle 0xbbf6a3
push edi
push edi
push edx
push 0x29de2
call fcn.00bcbda1
add esp, 0x10
push esi
push esi
push dword [0x66010]
push dword [0x33268]
call fcn.00bcf63c
add esp, 0x10
cmp eax, dword [0x66010]
jne 0xbbf738
push ecx
push ecx
add dword [0x33268], eax
push 4
mov dword [0x40aa4], eax
lea eax, [ebp - 0x10]
push eax
call fcn.00bcf63c
add esp, 0x10
cmp eax, 4
jne 0xbbf738
mov edx, dword [ebp - 0x10]
mov eax, dword [0x33268]
mov dword [eax], edx
add eax, 4
cmp dword [0x32624], 0
mov dword [0x33268], eax
lea eax, [edx - 4]
mov dword [0x40aa8], edx
mov dword [ebp - 0x10], eax
jle 0xbbf718
push edx
push edx
push eax
push 0x29df0
call fcn.00bcbda1
add esp, 0x10
push eax
push eax
push dword [ebp - 0x10]
push dword [0x33268]
call fcn.00bcf63c
mov edx, dword [ebp - 0x10]
add esp, 0x10
add dword [0x33268], edx
cmp eax, edx
je 0xbbf77a
cmp dword [0x32624], 0
jle 0xbbf751
sub esp, 0xc
push 0x29dfe
call fcn.00bcbda1
add esp, 0x10
mov dword [0x33268], ebx
mov dword [0x40aa4], 0
mov dword [0x40aa8], 0
mov dword [0x40aac], 0
jmp 0xbbfa5b
or dword [0x40a88], 0x10
jmp 0xbbfa5b
mov eax, dword [ebp - 0x38]
mov dword [0x33268], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x3c], 0
sub eax, 4
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x44], eax
jmp 0xbbf89e
movzx eax, word [0x6602a]
mov edx, dword [0x6601c]
imul eax, ecx
add edx, 0x66000
add edx, eax
cmp dword [edx], 1
jne 0xbbf89b
mov eax, dword [edx + 4]
cmp dword [ebp - 0x44], 1
mov dword [0x40c48], eax
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x20], eax
ja 0xbbf7f3
mov esi, dword [edx + 0xc]
and esi, 0xffffff
jmp 0xbbf7f6
mov esi, dword [edx + 0xc]
cmp esi, 0xfffff
mov ebx, dword [edx + 0x14]
ja 0xbbf80b
mov dword [0x33c34], 7
cmp dword [ebp - 0x38], 1
jne 0xbbf82c
mov ecx, dword [0x40994]
mov edx, dword [edx + 8]
cmp ecx, edx
jb 0xbbf82c
lea eax, [edx + ebx]
cmp ecx, eax
jae 0xbbf82c
sub ecx, edx
add ecx, esi
mov dword [ebp - 0x3c], ecx
cmp ebx, dword [ebp - 0x20]
mov edi, ebx
jbe 0xbbf836
mov edi, dword [ebp - 0x20]
lea eax, [esi + ebx]
cmp dword [0x33268], eax
jae 0xbbf846
mov dword [0x33268], eax
cmp dword [0x32624], 0
jle 0xbbf863
mov eax, ebx
sub eax, edi
push eax
push edi
push esi
push 0x29e04
call fcn.00bcbda1
add esp, 0x10
push eax
push eax
push ebx
push esi
inc dword [ebp - 0x24]
call fcn.00bcc29c
add esp, 0x10
test eax, eax
je 0xbbf8b0
push eax
push eax
push edi
push esi
call fcn.00bcf63c
add esp, 0x10
cmp eax, edi
jne 0xbbf8b0
cmp ebx, eax
jbe 0xbbf89b
sub ebx, eax
add eax, esi
push edi
push ebx
push 0
push eax
call fcn.00bcc47e
add esp, 0x10
inc dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
movzx eax, word [0x6602c]
cmp ecx, eax
jb 0xbbf7b3
cmp dword [0x33c34], 0
jne 0xbbfa62
cmp dword [ebp - 0x24], 0
jne 0xbbf8d2
mov dword [0x33c34], 0xd
jmp 0xbbfa62
movzx ecx, word [0x66030]
movzx edx, word [0x6602e]
movzx eax, word [0x66032]
cmp dword [ebp - 0x40], 0
mov dword [0x40aa4], ecx
mov dword [0x40aa8], edx
mov dword [0x40ab0], eax
je 0xbbf912
mov eax, dword [0x33268]
add eax, 0xfff
and eax, 0xfffff000
mov dword [0x33268], eax
mov ebx, ecx
mov eax, dword [0x66020]
imul ebx, edx
push esi
push esi
push ebx
push dword [0x33268]
mov dword [0x40c48], eax
call fcn.00bcf63c
add esp, 0x10
cmp eax, ebx
jne 0xbbf9f0
mov esi, dword [0x33268]
add eax, esi
cmp dword [0x32624], 0
mov dword [0x40aac], esi
mov dword [0x33268], eax
jle 0xbbf966
push ebx
push ebx
push eax
push 0x29e17
call fcn.00bcbda1
add esp, 0x10
mov dword [ebp - 0x10], 0
jmp 0xbbf9e1
imul ebx, eax, 0x28
lea ecx, [esi + ebx]
cmp dword [ecx + 0xc], 0
jne 0xbbf9de
cmp dword [ecx + 0x14], 0
je 0xbbf9de
mov eax, dword [ecx + 0x20]
mov ebx, dword [ebx + esi + 0x14]
mov edx, eax
add eax, dword [0x33268]
neg edx
and edx, eax
mov eax, dword [ecx + 0x10]
push ecx
push ecx
push ebx
push edx
mov dword [0x33268], edx
mov dword [0x40c48], eax
call fcn.00bcc29c
add esp, 0x10
test eax, eax
je 0xbbf9f0
push edx
push edx
push ebx
push dword [0x33268]
call fcn.00bcf63c
add esp, 0x10
cmp eax, ebx
mov ecx, eax
jne 0xbbf9f0
mov eax, dword [0x33268]
imul edx, dword [ebp - 0x10], 0x28
mov dword [edx + esi + 0xc], eax
lea eax, [ecx + eax]
mov dword [0x33268], eax
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp eax, dword [0x40aa4]
jb 0xbbf96f
xor eax, eax
jmp 0xbbf9f5
mov eax, 1
cmp dword [0x40aac], 0xffff
jbe 0xbbfa05
test eax, eax
je 0xbbfa52
cmp dword [0x32624], 0
jle 0xbbfa1e
sub esp, 0xc
push 0x29dfe
call fcn.00bcbda1
add esp, 0x10
mov dword [0x40aa4], 0
mov dword [0x40aa8], 0
mov dword [0x40aac], 0
mov dword [0x40ab0], 0
mov dword [0x33268], 0
jmp 0xbbfa62
or dword [0x40a88], 0x20
jmp 0xbbfa62
mov dword [ebp - 0x3c], 0
cmp dword [0x33c34], 0
jne 0xbbfa9a
cmp dword [0x32624], 0
jle 0xbbfa89
push eax
push eax
push dword [0x40994]
push 0x29e24
call fcn.00bcbda1
add esp, 0x10
cmp dword [ebp - 0x3c], 0
je 0xbbfaae
mov edx, dword [ebp - 0x3c]
mov dword [0x40994], edx
jmp 0xbbfaae
sub esp, 0xc
push 0xa
call fcn.00bcbaf6
add esp, 0x10
mov dword [ebp - 0x38], 0
call fcn.00bcda03
cmp dword [ebp + 0x10], 0
je 0xbbfae6
mov eax, dword [ebp - 0x38]
cmp dword [ebp + 0x10], eax
je 0xbbfae6
mov dword [0x33c34], 0xd
mov dword [ebp - 0x38], 0
jmp 0xbbfae6
cmp byte [0x66007], 9
jne 0xbbebd3
jmp 0xbbebf5
mov eax, dword [ebp - 0x38]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret