Function at 0x2b5e370
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x24]
cmp eax, dword [ecx + 8]
jbe 0x2b5ef85
sub esp, 0xa4
lea edi, [esp + 0x84]
xor eax, eax
call fcn.02b3eb18
mov ecx, dword [esp + 0xac]
test ecx, ecx
jge 0x2b5e3bb
mov ebx, dword [esp + 0xa8]
sub eax, ebx
mov ebx, 0
sbb ebx, ecx
jmp 0x2b5e3c4
mov eax, dword [esp + 0xa8]
mov ebx, ecx
test ebx, ebx
xchg ebp, ebx
sete bl
xchg ebp, ebx
cmp eax, 0x3b9aca00
xchg esi, ebx
setb bl
xchg esi, ebx
and esi, ebp
xchg esi, eax
test al, al
xchg esi, eax
je 0x2b5e4d4
mov byte [esp + 0xa3], 0x73
test eax, eax
xchg esi, ebx
sete bl
xchg esi, ebx
and esi, ebp
xchg esi, eax
test al, al
xchg esi, eax
jne 0x2b5e4b5
cmp eax, 0x3e8
xchg esi, ebx
setb bl
xchg esi, ebx
and esi, ebp
xchg esi, eax
test al, al
xchg esi, eax
je 0x2b5e427
mov byte [esp + 0xa2], 0x6e
xor edx, edx
mov ebp, 0x1e
jmp 0x2b5e491
cmp eax, 0xf4240
xchg esi, ebx
setb bl
xchg esi, ebx
and esi, ebp
xchg esi, eax
test al, al
xchg esi, eax
jne 0x2b5e44f
mov byte [esp + 0xa2], 0x6d
mov edx, 6
mov ebp, 0x1e
jmp 0x2b5e491
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], ebx
lea eax, [esp + 0xa1]
mov dword [esp], eax
lea eax, [0x2d3f33c]
mov dword [esp + 4], eax
mov dword [esp + 8], 2
call fcn.02b3f220
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0xac]
mov ebx, dword [esp + 0x44]
mov edx, 3
mov ebp, 0x1d
cmp ebp, 0x20
ja 0x2b5ef78
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x48], edx
mov esi, ebp
xor edi, edi
xor ebp, ebp
xchg ebp, eax
mov byte [esp + 0x16], al
xchg ebp, eax
mov ebp, esi
jmp 0x2b5ecb1
lea eax, [0x2d3f2aa]
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], 2
add esp, 0xa4
ret
mov byte [esp + 0xa3], 0x73
xor edx, edx
xor ebp, ebp
mov esi, 0x1f
jmp 0x2b5e4fa
mov edi, dword [esp + 0x50]
lea edx, [edi + 1]
mov edi, dword [esp + 0x6c]
mov ebx, ebp
mov ebp, esi
mov esi, eax
mov eax, edi
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], ebx
cmp edx, 9
jge 0x2b5e620
mov dword [esp + 0x50], edx
mov dword [esp + 0x1c], esi
xchg ebp, eax
mov byte [esp + 0x17], al
xchg ebp, eax
mov edi, eax
mov eax, 0xcccccccd
mul ebx
shr edx, 3
mov dword [esp + 0x80], edx
lea esi, [edx + edx*4]
shl esi, 1
sub ebx, esi
mov eax, 0x19999999
mul ebx
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], eax
mov eax, 0xcccccccd
mul edi
shr edx, 3
mov eax, edx
add edx, 0
mov dword [esp + 0x74], edx
mov esi, dword [esp + 0x78]
add edx, esi
mov dword [esp + 0x78], edx
lea ebp, [eax + eax*4]
lea ebx, [ebx + ebx*2]
shl ebp, 1
sub edi, ebp
lea ebx, [edi + ebx*2]
mov ebp, eax
mov eax, 0xcccccccd
mov edi, edx
mul ebx
shr edx, 3
mov dword [esp + 0x70], edx
add edi, edx
mov dword [esp + 0x6c], edi
mov eax, edi
mov ebx, 0xa
mul ebx
mov ebx, dword [esp + 0x40]
sub ebx, eax
add ebp, 0
mov ebp, dword [esp + 0x80]
adc ebp, 0
mov edi, dword [esp + 0x74]
add edi, esi
mov esi, dword [esp + 0x7c]
adc ebp, esi
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x70]
add esi, edi
adc ebp, 0
lea esi, [ebp + ebp*4]
lea esi, [edx + esi*2]
mov edi, dword [esp + 0x40]
sub edi, eax
mov edi, dword [esp + 0x44]
sbb edi, esi
movzx esi, byte [esp + 0x17]
xchg esi, eax
test al, al
xchg esi, eax
je 0x2b5e5de
mov esi, 1
jmp 0x2b5e5f2
test edi, edi
xchg esi, ebx
setne bl
xchg esi, ebx
test ebx, ebx
xchg edi, ebx
setne bl
xchg edi, ebx
or esi, edi
xchg esi, eax
test al, al
xchg esi, eax
je 0x2b5e617
mov edi, dword [esp + 0x1c]
lea eax, [edi - 1]
cmp eax, 0x1f
jae 0x2b5ec84
add ebx, 0x30
mov byte [esp + edi + 0x83], bl
jmp 0x2b5e4e7
mov eax, dword [esp + 0x1c]
jmp 0x2b5e4e7
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x2b5e63c
lea ebp, [esi - 1]
cmp ebp, 0x1f
jae 0x2b5ec78
mov byte [esp + esi + 0x83], 0x2e
jmp 0x2b5e63e
mov ebp, esi
cmp ebp, 0x20
ja 0x2b5ec6c
mov dword [esp + 0x2c], ebp
mov edx, eax
mov eax, 0x88888889
mov esi, edx
mul ebx
shr edx, 5
mov dword [esp + 0x80], edx
imul edi, edx, 0x3c
sub ebx, edi
mov eax, 0x4444444
mul ebx
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], eax
mov eax, 0x88888889
mul esi
shr edx, 5
mov eax, edx
add edx, 0
mov ebp, dword [esp + 0x78]
add ebp, edx
imul edi, eax, 0x3c
sub esi, edi
shl ebx, 4
add ebx, esi
mov esi, eax
mov eax, 0x88888889
mov edi, edx
mul ebx
shr edx, 5
mov dword [esp + 0x74], edx
mov ebx, ebp
add ebp, edx
mov dword [esp + 0x70], ebp
mov eax, ebp
mov edx, 0x3c
mul edx
mov ebp, dword [esp + 0x40]
sub ebp, eax
mov dword [esp + 0x3c], ebp
add esi, 0
mov esi, dword [esp + 0x80]
adc esi, 0
mov ebp, dword [esp + 0x78]
add ebp, edi
mov ebp, dword [esp + 0x7c]
adc ebp, esi
mov esi, dword [esp + 0x74]
add ebx, esi
adc ebp, 0
mov dword [esp + 0x68], ebp
imul ebx, ebp, 0x3c
add edx, ebx
mov ebx, dword [esp + 0x40]
sub ebx, eax
mov ebx, dword [esp + 0x44]
sbb ebx, edx
test ebx, ebx
sete dl
mov esi, dword [esp + 0x3c]
test esi, esi
xchg edi, ebx
sete bl
xchg edi, ebx
and edx, edi
test dl, dl
je 0x2b5e72b
mov edx, dword [esp + 0x2c]
lea eax, [edx - 1]
cmp edx, eax
jbe 0x2b5ec65
mov byte [esp + edx + 0x83], 0x30
jmp 0x2b5e832
mov edx, dword [esp + 0x2c]
mov eax, edx
jmp 0x2b5e753
mov esi, edi
lea edi, [edx + 0x30]
xchg edi, eax
mov byte [esp + ebx + 0x83], al
xchg edi, eax
mov edi, dword [esp + 0x6c]
mov ebp, dword [esp + 0x68]
mov ebx, esi
mov edx, eax
mov eax, dword [esp + 0x2c]
mov esi, edi
mov dword [esp + 0x28], edx
test esi, esi
xchg edi, ebx
seta bl
xchg edi, ebx
test ebx, ebx
xchg ebp, ebx
sete bl
xchg ebp, ebx
seta dl
and ebp, edi
or ebp, edx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x2b5e82a
mov dword [esp + 0x3c], esi
mov eax, 0xcccccccd
mul ebx
shr edx, 3
lea edi, [edx + edx*4]
shl edi, 1
sub ebx, edi
mov eax, 0x19999999
mov edi, edx
mul ebx
mov dword [esp + 0x80], edx
mov dword [esp + 0x7c], eax
mov eax, 0xcccccccd
mul esi
shr edx, 3
mov eax, edx
add edx, 0
mov dword [esp + 0x78], edx
mov ebp, dword [esp + 0x7c]
add edx, ebp
lea ebx, [ebx + ebx*2]
lea ebp, [eax + eax*4]
shl ebp, 1
sub esi, ebp
lea ebx, [esi + ebx*2]
mov ebp, eax
mov eax, 0xcccccccd
mov esi, edx
mul ebx
shr edx, 3
mov dword [esp + 0x74], edx
add edx, esi
mov dword [esp + 0x6c], edx
mov eax, edx
mov ebx, 0xa
mul ebx
mov edx, dword [esp + 0x3c]
sub edx, eax
add ebp, 0
adc edi, 0
mov ebp, dword [esp + 0x78]
mov ebx, dword [esp + 0x7c]
add ebp, ebx
mov ebx, dword [esp + 0x80]
adc edi, ebx
mov ebx, dword [esp + 0x74]
add ebx, esi
adc edi, 0
mov ebx, dword [esp + 0x28]
lea eax, [ebx - 1]
mov ebp, dword [esp + 0x2c]
cmp ebp, eax
ja 0x2b5e733
jmp 0x2b5ec5e
mov ebp, dword [esp + 0x68]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x70]
test edx, edx
seta bl
test ebp, ebp
xchg esi, ebx
sete bl
xchg esi, ebx
xchg edi, ebx
seta bl
xchg edi, ebx
and esi, ebx
or edi, esi
xchg edi, eax
test al, al
xchg edi, eax
je 0x2b5e972
lea ebx, [eax - 1]
cmp ebx, 0x20
jae 0x2b5ec52
mov dword [esp + 0x64], eax
mov dword [esp + 0x2c], ebx
mov esi, eax
mov eax, 0x88888889
mov edi, edx
mul ebp
shr edx, 5
mov dword [esp + 0x80], edx
imul ebx, edx, 0x3c
sub ebp, ebx
mov eax, ebp
mov ebx, 0x4444444
mul ebx
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], eax
mov ebx, eax
mov eax, 0x88888889
mul edi
shr edx, 5
mov eax, edx
add edx, 0
mov dword [esp + 0x74], edx
add ebx, edx
mov dword [esp + 0x6c], ebx
imul edx, eax, 0x3c
sub edi, edx
shl ebp, 4
lea edx, [ebp + edi]
mov ebp, eax
mov eax, 0x88888889
mul edx
shr edx, 5
mov edi, edx
add edx, ebx
mov dword [esp + 0x60], edx
mov eax, edx
mov ebx, 0x3c
mul ebx
mov ebx, dword [esp + 0x70]
sub ebx, eax
mov dword [esp + 0x38], ebx
mov byte [esp + esi + 0x83], 0x6d
add ebp, 0
mov ebp, dword [esp + 0x80]
adc ebp, 0
mov esi, dword [esp + 0x78]
mov ebx, dword [esp + 0x74]
add esi, ebx
mov ebx, dword [esp + 0x7c]
adc ebx, ebp
mov ebp, dword [esp + 0x6c]
add edi, ebp
adc ebx, 0
imul ebp, ebx, 0x3c
add edx, ebp
mov ebp, dword [esp + 0x70]
sub ebp, eax
mov ebp, dword [esp + 0x68]
sbb ebp, edx
mov edx, dword [esp + 0x38]
test edx, edx
xchg esi, ebx
sete bl
xchg esi, ebx
test ebp, ebp
xchg edi, ebx
sete bl
xchg edi, ebx
and edi, esi
xchg edi, eax
test al, al
xchg edi, eax
je 0x2b5e963
mov edx, dword [esp + 0x64]
lea eax, [edx - 2]
mov ebp, dword [esp + 0x2c]
cmp eax, ebp
jae 0x2b5ec4b
mov byte [esp + edx + 0x82], 0x30
jmp 0x2b5eaf1
mov dword [esp + 0x5c], ebx
mov esi, dword [esp + 0x2c]
mov eax, esi
jmp 0x2b5ea09
test ecx, ecx
jge 0x2b5e988
lea edx, [eax - 1]
cmp edx, 0x20
jae 0x2b5e9e1
mov byte [esp + eax + 0x83], 0x2d
jmp 0x2b5e98a
mov edx, eax
cmp edx, 0x20
ja 0x2b5e9d5
mov dword [esp], 0
lea eax, [edx - 0x20]
neg eax
mov ecx, eax
neg eax
sar eax, 0x1f
and edx, eax
lea eax, [esp + edx + 0x84]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.02b2ac40
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], ecx
add esp, 0xa4
ret
mov eax, edx
mov ecx, 0x20
call fcn.02b3e960
mov eax, edx
mov ecx, 0x20
call fcn.02b3e900
lea edi, [edx + 0x30]
xchg edi, eax
mov byte [esp + ebp + 0x83], al
xchg edi, eax
mov edx, dword [esp + 0x70]
mov ebp, ebx
mov esi, eax
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0x18], esi
test edx, edx
xchg edi, ebx
seta bl
xchg edi, ebx
test ebp, ebp
sete bl
xchg esi, ebx
seta bl
xchg esi, ebx
and ebx, edi
or ebx, esi
test bl, bl
je 0x2b5eae9
mov dword [esp + 0x38], edx
mov eax, 0xcccccccd
mov esi, edx
mul edx
shr edx, 3
mov edi, edx
add edx, 0
mov dword [esp + 0x80], edx
mov eax, 0xcccccccd
mul ebp
shr edx, 3
mov dword [esp + 0x7c], edx
lea ebx, [edx + edx*4]
shl ebx, 1
sub ebp, ebx
mov eax, 0x19999999
mul ebp
mov dword [esp + 0x78], edx
mov dword [esp + 0x74], eax
mov ebx, dword [esp + 0x80]
add eax, ebx
mov dword [esp + 0x80], eax
lea edx, [edi + edi*4]
shl edx, 1
sub esi, edx
lea edx, [ebp + ebp*2]
lea edx, [esi + edx*2]
mov ebp, eax
mov eax, 0xcccccccd
mul edx
shr edx, 3
mov esi, edx
add edx, ebp
mov dword [esp + 0x70], edx
mov eax, edx
mov ebp, 0xa
mul ebp
mov edx, dword [esp + 0x38]
sub edx, eax
add edi, 0
mov edi, dword [esp + 0x7c]
adc edi, 0
mov ebp, dword [esp + 0x74]
add ebp, ebx
mov ebx, dword [esp + 0x78]
adc ebx, edi
mov ebp, dword [esp + 0x80]
add esi, ebp
adc ebx, 0
mov ebp, dword [esp + 0x18]
lea eax, [ebp - 1]
mov esi, dword [esp + 0x2c]
cmp eax, esi
jb 0x2b5e9ed
jmp 0x2b5ec44
mov ebx, dword [esp + 0x5c]
mov eax, dword [esp + 0x18]
test ebx, ebx
seta dl
mov ebp, dword [esp + 0x60]
test ebp, ebp
xchg esi, ebx
seta bl
xchg esi, ebx
test ebx, ebx
xchg edi, ebx
sete bl
xchg edi, ebx
and edi, esi
or edi, edx
xchg edi, eax
test al, al
xchg edi, eax
je 0x2b5eb32
lea edx, [eax - 1]
cmp edx, 0x20
jae 0x2b5ec38
mov dword [esp + 0x2c], edx
mov byte [esp + eax + 0x83], 0x68
mov eax, edx
jmp 0x2b5eb54
test ecx, ecx
jmp 0x2b5e974
lea edi, [eax + 0x30]
xchg edi, eax
mov byte [esp + ebx + 0x83], al
xchg edi, eax
mov edi, dword [esp + 0x80]
mov eax, esi
mov ebx, edx
mov edx, ebp
mov ebp, edi
mov dword [esp + 0x64], edx
test ebp, ebp
xchg esi, ebx
seta bl
xchg esi, ebx
test ebx, ebx
xchg edi, ebx
seta bl
xchg edi, ebx
sete dl
and edx, esi
or edx, edi
test dl, dl
je 0x2b5ec24
mov dword [esp + 0x34], ebp
mov eax, 0xcccccccd
mul ebp
shr edx, 3
mov edi, edx
add edx, 0
mov dword [esp + 0x80], edx
mov eax, 0xcccccccd
mul ebx
shr edx, 3
mov dword [esp + 0x7c], edx
lea esi, [edx + edx*4]
shl esi, 1
sub ebx, esi
mov eax, 0x19999999
mul ebx
mov dword [esp + 0x78], edx
mov dword [esp + 0x74], eax
mov esi, dword [esp + 0x80]
add eax, esi
lea ebx, [ebx + ebx*2]
lea edx, [edi + edi*4]
shl edx, 1
sub ebp, edx
lea edx, [ebp + ebx*2]
mov ebx, eax
mov eax, 0xcccccccd
mul edx
shr edx, 3
mov ebp, edx
add edx, ebx
mov dword [esp + 0x80], edx
mov eax, 0xa
mul edx
mov edx, dword [esp + 0x34]
sub edx, eax
add edi, 0
mov edi, dword [esp + 0x7c]
adc edi, 0
mov eax, edx
mov edx, dword [esp + 0x74]
add edx, esi
mov edx, dword [esp + 0x78]
adc edx, edi
add ebp, ebx
adc edx, 0
mov ebx, dword [esp + 0x64]
lea ebp, [ebx - 1]
mov esi, dword [esp + 0x2c]
cmp ebp, esi
jb 0x2b5eb39
jmp 0x2b5ec2f
test ecx, ecx
mov eax, dword [esp + 0x64]
jmp 0x2b5e974
mov eax, ebp
mov ecx, esi
call fcn.02b3e900
mov eax, edx
mov ecx, 0x20
call fcn.02b3e900
mov ecx, esi
call fcn.02b3e900
mov ecx, ebp
call fcn.02b3e900
mov eax, ebx
mov ecx, 0x20
call fcn.02b3e900
mov ecx, ebp
call fcn.02b3e900
mov ecx, edx
call fcn.02b3e900
mov ecx, ebp
mov edx, 0x20
call fcn.02b3e920
mov eax, ebp
mov ecx, 0x1f
call fcn.02b3e900
mov ecx, 0x1f
call fcn.02b3e900
mov ebx, dword [esp + 0x4c]
inc ebx
mov esi, dword [esp + 0x48]
mov esi, ebp
mov byte [esp + 0x16], dl
mov ebp, eax
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x58]
mov eax, ebx
mov ebx, edi
mov edi, eax
mov eax, dword [esp + 0x58]
cmp edi, edx
jge 0x2b5edef
mov dword [esp + 0x4c], edi
mov dword [esp + 0x80], eax
mov dword [esp + 0x24], ebp
mov dword [esp + 0x7c], ebx
mov eax, 0xcccccccd
mov edi, dword [esp + 0x80]
mul edi
shr edx, 3
mov dword [esp + 0x78], edx
add edx, 0
mov dword [esp + 0x74], edx
mov eax, 0xcccccccd
mul ebx
shr edx, 3
mov dword [esp + 0x70], edx
lea esi, [edx + edx*4]
shl esi, 1
sub ebx, esi
mov eax, 0x19999999
mul ebx
mov dword [esp + 0x6c], eax
mov esi, dword [esp + 0x74]
add eax, esi
mov dword [esp + 0x60], eax
mov ebp, dword [esp + 0x78]
lea esi, [ebp + ebp*4]
shl esi, 1
sub edi, esi
lea ebx, [ebx + ebx*2]
lea ebx, [edi + ebx*2]
mov esi, eax
mov eax, 0xcccccccd
mov edi, edx
mul ebx
shr edx, 3
mov dword [esp + 0x78], edx
add edx, esi
mov dword [esp + 0x58], edx
mov eax, edx
mov ebx, 0xa
mul ebx
mov ebx, dword [esp + 0x80]
sub ebx, eax
mov dword [esp + 0x54], ebx
add ebp, 0
mov ebp, dword [esp + 0x70]
adc ebp, 0
mov ebx, dword [esp + 0x6c]
mov esi, dword [esp + 0x74]
add ebx, esi
adc edi, ebp
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x60]
add ebx, ebp
adc edi, 0
lea ebx, [edi + edi*4]
lea ebx, [edx + ebx*2]
mov ebp, dword [esp + 0x80]
sub ebp, eax
mov ebp, dword [esp + 0x7c]
sbb ebp, ebx
movzx ebx, byte [esp + 0x16]
test bl, bl
je 0x2b5ed9e
mov ebx, dword [esp + 0x54]
mov ebp, 1
jmp 0x2b5edb6
mov ebx, dword [esp + 0x54]
test ebx, ebx
xchg esi, ebx
setne bl
xchg esi, ebx
test ebp, ebp
xchg ebp, ebx
setne bl
xchg ebp, ebx
or ebp, esi
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x2b5ede0
mov esi, dword [esp + 0x24]
lea eax, [esi - 1]
mov edx, ebp
mov ebp, dword [esp + 0x2c]
cmp ebp, eax
jbe 0x2b5ef71
add ebx, 0x30
mov byte [esp + esi + 0x83], bl
jmp 0x2b5ec8e
mov edx, ebp
mov ebp, dword [esp + 0x2c]
mov eax, dword [esp + 0x24]
jmp 0x2b5ec8e
movzx edi, byte [esp + 0x16]
xchg edi, eax
test al, al
xchg edi, eax
je 0x2b5ee0f
lea edi, [ebp - 1]
cmp esi, edi
jbe 0x2b5ef68
mov byte [esp + ebp + 0x83], 0x2e
jmp 0x2b5ee11
mov edi, ebp
cmp edi, 0x20
ja 0x2b5ef5c
test ebx, ebx
sete dl
test eax, eax
xchg ebp, ebx
sete bl
xchg ebp, ebx
and edx, ebp
test dl, dl
jne 0x2b5ee36
mov dword [esp + 0x2c], edi
mov edx, edi
jmp 0x2b5ee6b
lea eax, [edi - 1]
cmp edi, eax
jbe 0x2b5ee4c
mov byte [esp + edi + 0x83], 0x30
test ecx, ecx
jmp 0x2b5e974
mov ecx, edi
call fcn.02b3e900
mov edi, esi
lea esi, [edx + 0x30]
xchg esi, eax
mov byte [esp + ebp + 0x83], al
xchg esi, eax
mov ebp, dword [esp + 0x70]
mov edx, edi
mov edi, eax
mov eax, ebp
test ebx, ebx
xchg ebp, ebx
seta bl
xchg ebp, ebx
xchg esi, ebx
sete bl
xchg esi, ebx
test eax, eax
seta dl
and esi, edx
or esi, ebp
xchg esi, eax
test al, al
xchg esi, eax
je 0x2b5ef4c
mov dword [esp + 0x20], edi
mov dword [esp + 0x30], eax
mov edx, eax
mov eax, 0xcccccccd
mov ebp, edx
mul edx
shr edx, 3
mov esi, edx
add edx, 0
mov dword [esp + 0x80], edx
mov eax, 0xcccccccd
mul ebx
shr edx, 3
mov dword [esp + 0x7c], edx
lea edi, [edx + edx*4]
shl edi, 1
sub ebx, edi
mov eax, 0x19999999
mul ebx
mov dword [esp + 0x78], edx
mov dword [esp + 0x74], eax
mov edi, dword [esp + 0x80]
add eax, edi
mov dword [esp + 0x80], eax
lea edx, [esi + esi*4]
shl edx, 1
sub ebp, edx
lea edx, [ebx + ebx*2]
lea edx, [ebp + edx*2]
mov ebx, eax
mov eax, 0xcccccccd
mul edx
shr edx, 3
mov ebp, edx
add edx, ebx
mov dword [esp + 0x70], edx
mov eax, edx
mov ebx, 0xa
mul ebx
mov edx, dword [esp + 0x30]
sub edx, eax
add esi, 0
mov esi, dword [esp + 0x7c]
adc esi, 0
mov ebx, dword [esp + 0x74]
add ebx, edi
mov ebx, dword [esp + 0x78]
adc ebx, esi
mov esi, dword [esp + 0x80]
add ebp, esi
adc ebx, 0
mov ebp, dword [esp + 0x20]
lea eax, [ebp - 1]
mov esi, dword [esp + 0x2c]
cmp esi, eax
ja 0x2b5ee53
jmp 0x2b5ef55
test ecx, ecx
mov eax, edi
jmp 0x2b5e974
mov ecx, esi
call fcn.02b3e900
mov ecx, edi
mov edx, 0x20
call fcn.02b3e920
mov eax, edi
mov ecx, esi
call fcn.02b3e900
mov ecx, ebp
call fcn.02b3e900
mov ecx, ebp
mov edx, 0x20
call fcn.02b3e920
nop
call fcn.02b3d440
jmp fcn.02b5e370