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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x2c
mov ebx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
mov dword [esp + 8], eax
mov edi, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
cmp dword [esp + 0x50], 2
je 0x410706
mov ecx, dword [0x4bc300]
mov dword [esp + 0x14], ecx
mov esi, dword [0x4bc2f8]
mov dword [esp + 0x10], esi
sub ecx, dword [0x4bc2fc]
add ecx, ecx
add ecx, ecx
add ecx, ecx
sub ecx, esi
add ecx, 0x20
mov dword [0x4bc2f0], ecx
mov ebp, dword [esp + 8]
test ebp, ebp
jne 0x40f817
mov edi, dword [ebx]
mov eax, dword [ebx + 4]
cmp edi, eax
cmovl edi, eax
xor edx, edx
test edi, edi
cmovs edi, edx
mov ecx, dword [ebx + 8]
cmp edi, ecx
cmovl edi, ecx
mov esi, dword [ebx + 0xc]
cmp edi, esi
cmovl edi, esi
mov ebp, dword [ebx + 0x10]
cmp edi, ebp
cmovl edi, ebp
mov ebp, dword [ebx + 0x14]
cmp edi, ebp
cmovge ebp, edi
mov edi, dword [ebx + 0x18]
mov eax, dword [ebx + 0x1c]
cmp edi, eax
cmovl edi, eax
xor edx, edx
test edi, edi
cmovs edi, edx
mov ecx, dword [ebx + 0x20]
cmp edi, ecx
cmovl edi, ecx
mov esi, dword [ebx + 0x24]
cmp edi, esi
cmovl edi, esi
mov eax, dword [ebx + 0x28]
cmp edi, eax
cmovge eax, edi
mov dword [esp + 4], eax
mov edi, dword [ebx + 0x2c]
mov ecx, dword [ebx + 0x30]
cmp edi, ecx
cmovge ecx, edi
xor edx, edx
test ecx, ecx
cmovs ecx, edx
mov esi, dword [ebx + 0x34]
cmp ecx, esi
cmovge esi, ecx
mov eax, dword [ebx + 0x38]
cmp esi, eax
cmovge eax, esi
mov edi, dword [ebx + 0x3c]
cmp eax, edi
cmovge edi, eax
mov dword [esp], edi
mov ecx, dword [ebx + 0x40]
mov esi, dword [ebx + 0x44]
cmp ecx, esi
cmovge esi, ecx
xor edx, edx
test esi, esi
cmovs esi, edx
mov edi, dword [ebx + 0x48]
cmp esi, edi
cmovge edi, esi
mov eax, dword [ebx + 0x4c]
cmp edi, eax
cmovge eax, edi
mov ecx, dword [ebx + 0x50]
cmp eax, ecx
cmovge ecx, eax
mov dword [esp + 0xc], ecx
test ebp, ebp
je 0x40f009
cmp ebp, 1
je 0x40f009
cmp ebp, 3
jle 0x4107ac
xor ecx, ecx
cmp ebp, 7
setg cl
lea ebp, [ecx + 3]
mov esi, dword [esp + 4]
test esi, esi
je 0x40f02f
cmp esi, 1
je 0x40f02f
cmp esi, 3
jle 0x41079f
cmp esi, 7
setg al
movzx edi, al
add edi, 3
mov dword [esp + 4], edi
mov edx, dword [esp]
test edx, edx
je 0x40f04a
cmp edx, 1
je 0x40f04a
cmp edx, 3
setg cl
movzx esi, cl
add esi, 2
mov dword [esp], esi
mov eax, dword [esp + 0xc]
test eax, eax
je 0x40f067
cmp eax, 1
je 0x40f067
cmp eax, 3
setg dl
movzx edi, dl
add edi, 2
mov dword [esp + 0xc], edi
mov eax, dword [0x4bc2f4]
mov ecx, dword [esp + 8]
test ecx, ecx
je 0x40fb5a
mov esi, 1
movzx ecx, byte [esp + 4]
shl esi, cl
sub esi, 1
cmp esi, dword [0x4bc308]
jne 0x40f094
add dword [esp + 4], 1
mov edx, 1
movzx ecx, byte [esp]
shl edx, cl
sub edx, 1
cmp edx, dword [0x4bc304]
jne 0x40f0ae
add dword [esp], 1
mov edi, dword [0x4bc314]
test edi, edi
je 0x40f117
mov esi, 1
mov ecx, ebp
shl esi, cl
sub esi, 1
cmp dword [ebx], 0x3e6
jle 0x40f0ce
mov dword [ebx], esi
cmp dword [ebx + 4], 0x3e6
jle 0x40f0da
mov dword [ebx + 4], esi
cmp dword [ebx + 8], 0x3e6
jle 0x40f0e6
mov dword [ebx + 8], esi
cmp dword [ebx + 0xc], 0x3e6
jle 0x40f0f2
mov dword [ebx + 0xc], esi
cmp dword [ebx + 0x10], 0x3e6
jle 0x40f0fe
mov dword [ebx + 0x10], esi
cmp dword [ebx + 0x14], 0x3e6
jle 0x40f10a
mov dword [ebx + 0x14], esi
cmp dword [ebx + 0x18], 0x3e6
jg 0x41049a
mov edx, dword [0x4bc310]
test edx, edx
je 0x40f185
mov edi, 1
movzx ecx, byte [esp + 4]
shl edi, cl
sub edi, 1
cmp dword [ebx + 0x1c], 0x3e6
jle 0x40f13c
mov dword [ebx + 0x1c], edi
cmp dword [ebx + 0x20], 0x3e6
jle 0x40f148
mov dword [ebx + 0x20], edi
cmp dword [ebx + 0x24], 0x3e6
jle 0x40f154
mov dword [ebx + 0x24], edi
cmp dword [ebx + 0x28], 0x3e6
jle 0x40f160
mov dword [ebx + 0x28], edi
cmp dword [ebx + 0x2c], 0x3e6
jle 0x40f16c
mov dword [ebx + 0x2c], edi
cmp dword [ebx + 0x30], 0x3e6
jle 0x40f178
mov dword [ebx + 0x30], edi
cmp dword [ebx + 0x34], 0x3e6
jg 0x410492
mov esi, dword [0x4bc30c]
test esi, esi
je 0x40f1f2
mov edx, 1
movzx ecx, byte [esp]
shl edx, cl
sub edx, 1
cmp dword [ebx + 0x38], 0x3e6
jle 0x40f1a9
mov dword [ebx + 0x38], edx
cmp dword [ebx + 0x3c], 0x3e6
jle 0x40f1b5
mov dword [ebx + 0x3c], edx
cmp dword [ebx + 0x40], 0x3e6
jle 0x40f1c1
mov dword [ebx + 0x40], edx
cmp dword [ebx + 0x44], 0x3e6
jle 0x40f1cd
mov dword [ebx + 0x44], edx
cmp dword [ebx + 0x48], 0x3e6
jle 0x40f1d9
mov dword [ebx + 0x48], edx
cmp dword [ebx + 0x4c], 0x3e6
jle 0x40f1e5
mov dword [ebx + 0x4c], edx
cmp dword [ebx + 0x50], 0x3e6
jg 0x41048a
mov edi, dword [esp + 4]
lea esi, [edi + edi]
add esi, edi
add esi, esi
mov edx, dword [esp]
add esi, edx
lea ecx, [ebp + ebp]
add ecx, ecx
add ecx, ecx
add ecx, ebp
add ecx, ecx
add ecx, ecx
add esi, ecx
add esi, esi
lea esi, [esi + 1]
lea edi, [ebx + 0x1c]
mov dword [esp + 0x18], edi
mov dword [esp + 8], ebx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x1c], edx
xor edx, edx
mov edi, 0x18
mov dword [esp + 0xc], ebp
mov dword [esp + 0x20], esi
mov esi, dword [esp + 0x10]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 8]
mov ebp, dword [ebx]
mov dword [esp + 0x10], ebp
cmp dword [esp + 0xc], esi
jle 0x40f3cc
mov ebp, 0x17
sub ebp, esi
shr ebp, 3
and ebp, 7
mov ecx, edi
sub ecx, esi
mov edx, eax
sar edx, cl
mov ebx, dword [esp + 0x1c]
mov byte [ebx], dl
lea edx, [esi + 8]
add ebx, 1
cmp edx, 0x17
jg 0x40f3ab
test ebp, ebp
je 0x40f320
cmp ebp, 1
je 0x40f305
cmp ebp, 2
nop
je 0x40f2f3
cmp ebp, 3
je 0x40f2e1
cmp ebp, 4
je 0x40f2cf
cmp ebp, 5
nop
je 0x40f2bd
cmp ebp, 6
jne 0x410403
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
cmp edx, 0x17
jg 0x40f3ab
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
lea ebp, [edx + 8]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 1], cl
lea ebp, [edx + 0x10]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 2], cl
lea ebp, [edx + 0x18]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 3], cl
lea ebp, [edx + 0x20]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 4], cl
lea ebp, [edx + 0x28]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 5], cl
lea ebp, [edx + 0x30]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 6], cl
lea ebp, [edx + 0x38]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 7], cl
add edx, 0x40
add ebx, 8
cmp edx, 0x17
jle 0x40f320
mov edx, 0x17
sub edx, esi
shr edx, 3
lea ebx, [edx + 1]
add dword [esp + 0x1c], ebx
add esi, 8
add edx, edx
add edx, edx
add edx, edx
add esi, edx
mov edx, 1
mov ebx, dword [esp + 0xc]
mov ecx, ebx
shl eax, cl
mov ebp, dword [esp + 0x10]
or eax, ebp
sub esi, ebx
add dword [esp + 8], 4
mov ebx, dword [esp + 8]
mov ecx, dword [esp + 0x18]
cmp ebx, ecx
jne 0x40f241
mov edi, esi
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
mov dword [0x4bc2f4], eax
mov dword [0x4bc2f8], edi
test dl, dl
je 0x40f41c
mov edx, dword [esp + 0x1c]
mov dword [0x4bc300], edx
mov dword [esp + 0x14], edx
mov ebp, dword [esp + 0x18]
lea ecx, [ebx + 0x38]
mov dword [esp + 0x18], ecx
mov edi, dword [esp + 0x14]
mov dword [esp + 0x1c], edi
xor edx, edx
mov edi, 0x18
mov dword [esp + 8], ebp
mov dword [esp + 0x20], esi
mov esi, dword [esp + 0x10]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 8]
mov ebp, dword [ebx]
mov dword [esp + 0xc], ebp
cmp dword [esp + 4], esi
jle 0x40f5d1
mov ebp, 0x17
sub ebp, esi
shr ebp, 3
and ebp, 7
mov ecx, edi
sub ecx, esi
mov edx, eax
sar edx, cl
mov ebx, dword [esp + 0x1c]
mov byte [ebx], dl
lea edx, [esi + 8]
add ebx, 1
cmp edx, 0x17
jg 0x40f5b0
test ebp, ebp
je 0x40f525
cmp ebp, 1
je 0x40f50a
cmp ebp, 2
je 0x40f4f8
cmp ebp, 3
je 0x40f4e6
cmp ebp, 4
nop
je 0x40f4d4
cmp ebp, 5
je 0x40f4c2
cmp ebp, 6
jne 0x4103ea
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
cmp edx, 0x17
jg 0x40f5b0
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
lea ebp, [edx + 8]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 1], cl
lea ebp, [edx + 0x10]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 2], cl
lea ebp, [edx + 0x18]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 3], cl
lea ebp, [edx + 0x20]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 4], cl
lea ebp, [edx + 0x28]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 5], cl
lea ebp, [edx + 0x30]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 6], cl
lea ebp, [edx + 0x38]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 7], cl
add edx, 0x40
add ebx, 8
cmp edx, 0x17
jle 0x40f525
mov edx, 0x17
sub edx, esi
shr edx, 3
lea ebx, [edx + 1]
add dword [esp + 0x1c], ebx
add esi, 8
add edx, edx
add edx, edx
add edx, edx
add esi, edx
mov edx, 1
mov ebx, dword [esp + 4]
mov ecx, ebx
shl eax, cl
mov ebp, dword [esp + 0xc]
or eax, ebp
sub esi, ebx
add dword [esp + 8], 4
mov ebx, dword [esp + 8]
cmp dword [esp + 0x18], ebx
jne 0x40f446
mov edi, esi
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov dword [0x4bc2f4], eax
mov dword [0x4bc2f8], edi
test dl, dl
je 0x40f61f
mov edx, dword [esp + 0x1c]
mov dword [0x4bc300], edx
mov dword [esp + 0x14], edx
mov ebp, dword [esp + 0x18]
lea ebx, [ecx + 0x54]
mov dword [esp + 0xc], ebx
xor edx, edx
mov edi, 0x18
mov dword [esp + 4], ebp
mov dword [esp + 0x18], esi
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 4]
mov ebp, dword [ecx]
mov dword [esp + 8], ebp
cmp dword [esp], esi
jle 0x40f7c7
mov ebp, 0x17
sub ebp, esi
shr ebp, 3
and ebp, 7
mov ecx, edi
sub ecx, esi
mov edx, eax
sar edx, cl
mov ebx, dword [esp + 0x14]
mov byte [ebx], dl
lea edx, [esi + 8]
add ebx, 1
cmp edx, 0x17
jg 0x40f7a6
test ebp, ebp
je 0x40f71b
cmp ebp, 1
je 0x40f700
cmp ebp, 2
je 0x40f6ee
cmp ebp, 3
nop
je 0x40f6dc
cmp ebp, 4
je 0x40f6ca
cmp ebp, 5
je 0x40f6b8
cmp ebp, 6
nop
jne 0x4103d1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
cmp edx, 0x17
jg 0x40f7a6
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
lea ebp, [edx + 8]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 1], cl
lea ebp, [edx + 0x10]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 2], cl
lea ebp, [edx + 0x18]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 3], cl
lea ebp, [edx + 0x20]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 4], cl
lea ebp, [edx + 0x28]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 5], cl
lea ebp, [edx + 0x30]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 6], cl
lea ebp, [edx + 0x38]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 7], cl
add edx, 0x40
add ebx, 8
cmp edx, 0x17
jle 0x40f71b
mov edx, 0x17
sub edx, esi
shr edx, 3
lea ebx, [edx + 1]
add dword [esp + 0x14], ebx
add esi, 8
add edx, edx
add edx, edx
add edx, edx
add esi, edx
mov edx, 1
mov ebx, dword [esp]
mov ecx, ebx
shl eax, cl
mov ebp, dword [esp + 8]
or eax, ebp
sub esi, ebx
add dword [esp + 4], 4
mov ebx, dword [esp + 4]
cmp dword [esp + 0xc], ebx
jne 0x40f63d
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x18]
mov dword [0x4bc2f4], eax
mov eax, dword [esp + 0x10]
mov dword [0x4bc2f8], eax
test dl, dl
je 0x40f80d
mov edi, dword [esp + 0x14]
mov dword [0x4bc300], edi
mov eax, esi
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [0x4bc30c], 0
mov dword [0x4bc310], 0
mov dword [0x4bc314], 0
mov dword [0x4bc304], 0xffffffff
mov dword [0x4bc308], 0xffffffff
mov ebp, dword [ebx]
cmp ebp, 0x3e6
jg 0x4103c5
xor esi, esi
test ebp, ebp
cmovns esi, ebp
mov ebp, esi
xor eax, eax
mov edx, dword [ebx + 4]
cmp edx, 0x3e6
jg 0x4103bb
cmp ebp, edx
cmovl ebp, edx
mov ecx, dword [ebx + 8]
cmp ecx, 0x3e6
jg 0x4103b1
cmp ebp, ecx
cmovl ebp, ecx
mov esi, dword [ebx + 0xc]
cmp esi, 0x3e6
jg 0x4103a7
cmp ebp, esi
cmovl ebp, esi
mov edx, dword [ebx + 0x10]
cmp edx, 0x3e6
jg 0x41039d
cmp ebp, edx
cmovl ebp, edx
mov ecx, dword [ebx + 0x14]
cmp ecx, 0x3e6
jle 0x410377
mov edx, dword [ebx + 0x18]
cmp edx, 0x3e6
jle 0x410480
mov dword [0x4bc314], 1
mov eax, dword [ebx + 0x1c]
cmp eax, 0x3e6
jg 0x410641
xor ecx, ecx
test eax, eax
cmovns ecx, eax
mov dword [esp + 4], ecx
cmp edi, 7
jg 0x4104a2
mov esi, 1
test eax, eax
jns 0x40f914
xor esi, esi
mov eax, 0xffffffff
mov dword [esp + 4], 0
mov edx, dword [ebx + 0x20]
cmp edx, 0x3e6
jg 0x41078c
mov ecx, dword [esp + 4]
cmp ecx, edx
cmovl ecx, edx
mov dword [esp + 4], ecx
mov byte [esp], 0
cmp eax, edx
jge 0x40f93f
mov eax, edx
mov esi, 1
mov edx, dword [ebx + 0x24]
cmp edx, 0x3e6
jg 0x410652
mov ecx, dword [esp + 4]
cmp ecx, edx
cmovl ecx, edx
mov dword [esp + 4], ecx
cmp edx, eax
jle 0x40f966
mov eax, edx
mov esi, 1
mov edx, dword [ebx + 0x28]
cmp edx, 0x3e6
jg 0x4106b6
mov ecx, dword [esp + 4]
cmp ecx, edx
cmovl ecx, edx
mov dword [esp + 4], ecx
cmp edx, eax
jle 0x40f98d
mov eax, edx
mov esi, 1
mov edx, dword [ebx + 0x2c]
cmp edx, 0x3e6
jg 0x4106ad
mov ecx, dword [esp + 4]
cmp ecx, edx
cmovl ecx, edx
mov dword [esp + 4], ecx
cmp edx, eax
jle 0x40f9b4
mov eax, edx
mov esi, 1
mov ecx, dword [ebx + 0x30]
cmp ecx, 0x3e6
jg 0x41065b
mov edx, dword [esp + 4]
cmp edx, ecx
cmovl edx, ecx
mov dword [esp + 4], edx
cmp ecx, eax
jle 0x410740
mov edx, dword [ebx + 0x34]
mov eax, ecx
cmp edx, 0x3e6
jg 0x41057b
mov esi, 1
mov ecx, dword [esp + 4]
cmp ecx, edx
cmovl ecx, edx
mov dword [esp + 4], ecx
cmp edi, 0xd
jg 0x40fa08
cmp edx, eax
jg 0x410608
mov edx, esi
test dl, dl
jne 0x410606
cmp byte [esp], 0
jne 0x410580
mov ecx, dword [ebx + 0x38]
cmp ecx, 0x3e6
jg 0x410599
xor eax, eax
test ecx, ecx
cmovns eax, ecx
mov dword [esp], eax
cmp edi, 0xe
jg 0x410761
mov esi, 1
test ecx, ecx
jns 0x40fa55
xor esi, esi
mov ecx, 0xffffffff
mov dword [esp], 0
mov eax, dword [ebx + 0x3c]
cmp eax, 0x3e6
jg 0x410795
mov edx, dword [esp]
cmp edx, eax
cmovl edx, eax
mov dword [esp], edx
mov byte [esp + 0xc], 0
cmp eax, ecx
jle 0x40fa7e
mov ecx, eax
mov esi, 1
mov eax, dword [ebx + 0x40]
cmp eax, 0x3e6
jg 0x4106bf
mov edx, dword [esp]
cmp edx, eax
cmovl edx, eax
mov dword [esp], edx
cmp eax, ecx
jle 0x40faa2
mov ecx, eax
mov esi, 1
mov eax, dword [ebx + 0x44]
cmp eax, 0x3e6
jg 0x410689
mov edx, dword [esp]
cmp edx, eax
cmovl edx, eax
mov dword [esp], edx
cmp ecx, eax
jge 0x40fac6
mov ecx, eax
mov esi, 1
mov eax, dword [ebx + 0x48]
cmp eax, 0x3e6
jg 0x410664
mov edx, dword [esp]
cmp edx, eax
cmovl edx, eax
mov dword [esp], edx
cmp eax, ecx
jle 0x40faea
mov ecx, eax
mov esi, 1
mov edx, dword [ebx + 0x4c]
cmp edx, 0x3e6
jg 0x410613
mov eax, dword [esp]
cmp eax, edx
cmovl eax, edx
mov dword [esp], eax
cmp ecx, edx
jge 0x410722
mov eax, dword [ebx + 0x50]
mov ecx, edx
cmp eax, 0x3e6
jg 0x41062c
mov esi, 1
mov edx, dword [esp]
cmp edx, eax
cmovl edx, eax
mov dword [esp], edx
cmp edi, 0x14
jg 0x4105f5
cmp ecx, eax
jge 0x4105f5
mov dword [0x4bc304], eax
cmp byte [esp + 0xc], 0
jne 0x410632
mov dword [esp + 0xc], 0
jmp 0x40efec
lea esi, [ebp + ebp]
add esi, esi
add esi, ebp
mov edx, dword [esp + 4]
add esi, edx
shl esi, 4
mov edi, dword [esp]
lea ecx, [edi + edi]
add ecx, ecx
mov edx, dword [esp + 0xc]
add ecx, edx
lea esi, [esi + ecx]
lea edi, [ebx + 0x18]
mov dword [esp + 0x20], edi
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x1c], ecx
xor edx, edx
mov edi, 0x18
mov dword [esp + 0x18], ebp
mov dword [esp + 0x24], esi
mov esi, dword [esp + 0x10]
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 8]
mov ebp, dword [ebx]
mov dword [esp + 0x10], ebp
mov ecx, dword [esp + 0x18]
cmp esi, ecx
jge 0x40fd31
mov ebp, 0x17
sub ebp, esi
shr ebp, 3
and ebp, 7
mov ecx, edi
sub ecx, esi
mov edx, eax
sar edx, cl
mov ebx, dword [esp + 0x1c]
mov byte [ebx], dl
lea edx, [esi + 8]
add ebx, 1
cmp edx, 0x17
jg 0x40fd10
test ebp, ebp
je 0x40fc85
cmp ebp, 1
je 0x40fc6a
cmp ebp, 2
je 0x40fc58
cmp ebp, 3
je 0x40fc46
cmp ebp, 4
je 0x40fc34
cmp ebp, 5
je 0x40fc22
cmp ebp, 6
jne 0x41041c
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
cmp edx, 0x17
jg 0x40fd10
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
lea ebp, [edx + 8]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 1], cl
lea ebp, [edx + 0x10]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 2], cl
lea ebp, [edx + 0x18]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 3], cl
lea ebp, [edx + 0x20]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 4], cl
lea ebp, [edx + 0x28]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 5], cl
lea ebp, [edx + 0x30]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 6], cl
lea ebp, [edx + 0x38]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 7], cl
add edx, 0x40
add ebx, 8
cmp edx, 0x17
jle 0x40fc85
mov edx, 0x17
sub edx, esi
shr edx, 3
lea ebx, [edx + 1]
add dword [esp + 0x1c], ebx
add esi, 8
add edx, edx
add edx, edx
add edx, edx
add esi, edx
mov edx, 1
mov ebx, dword [esp + 0x18]
mov ecx, ebx
shl eax, cl
mov ebp, dword [esp + 0x10]
or eax, ebp
sub esi, ebx
add dword [esp + 8], 4
mov ebx, dword [esp + 8]
mov ecx, dword [esp + 0x20]
cmp ebx, ecx
jne 0x40fba6
mov edi, esi
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x24]
mov ebx, dword [esp + 0x28]
mov dword [0x4bc2f4], eax
mov dword [0x4bc2f8], edi
test dl, dl
je 0x4106e3
mov edx, dword [esp + 0x1c]
mov dword [0x4bc300], edx
lea edi, [ebx + 0x2c]
mov dword [esp + 0x18], edi
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x14], edx
xor edx, edx
mov edi, 0x18
mov dword [esp + 8], ecx
mov dword [esp + 0x20], esi
mov esi, dword [esp + 0x10]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 8]
mov ebp, dword [ebx]
mov dword [esp + 0x10], ebp
cmp dword [esp + 4], esi
jle 0x40ff31
mov ebp, 0x17
sub ebp, esi
shr ebp, 3
and ebp, 7
mov ecx, edi
sub ecx, esi
mov edx, eax
sar edx, cl
mov ebx, dword [esp + 0x14]
mov byte [ebx], dl
lea edx, [esi + 8]
add ebx, 1
cmp edx, 0x17
jg 0x40ff10
test ebp, ebp
je 0x40fe85
cmp ebp, 1
je 0x40fe6a
cmp ebp, 2
je 0x40fe58
cmp ebp, 3
je 0x40fe46
cmp ebp, 4
nop
je 0x40fe34
cmp ebp, 5
je 0x40fe22
cmp ebp, 6
jne 0x410467
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
cmp edx, 0x17
jg 0x40ff10
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
lea ebp, [edx + 8]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 1], cl
lea ebp, [edx + 0x10]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 2], cl
lea ebp, [edx + 0x18]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 3], cl
lea ebp, [edx + 0x20]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 4], cl
lea ebp, [edx + 0x28]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 5], cl
lea ebp, [edx + 0x30]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 6], cl
lea ebp, [edx + 0x38]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 7], cl
add edx, 0x40
add ebx, 8
cmp edx, 0x17
jle 0x40fe85
mov edx, 0x17
sub edx, esi
shr edx, 3
lea ebx, [edx + 1]
add dword [esp + 0x14], ebx
add esi, 8
add edx, edx
add edx, edx
add edx, edx
add esi, edx
mov edx, 1
mov ebx, dword [esp + 4]
mov ecx, ebx
shl eax, cl
mov ebp, dword [esp + 0x10]
or eax, ebp
sub esi, ebx
add dword [esp + 8], 4
mov ebx, dword [esp + 8]
mov ecx, dword [esp + 0x18]
cmp ebx, ecx
jne 0x40fda7
mov edi, esi
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
mov dword [0x4bc2f4], eax
mov dword [0x4bc2f8], edi
test dl, dl
je 0x4106f9
mov edx, dword [esp + 0x14]
mov dword [0x4bc300], edx
mov dword [esp + 4], ecx
lea edi, [ebx + 0x40]
mov dword [esp + 0x18], edi
mov ebp, dword [esp + 0x14]
xor edx, edx
mov edi, 0x18
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x20], esi
mov esi, dword [esp + 0x10]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 4]
mov ecx, dword [ebx]
mov dword [esp + 8], ecx
cmp dword [esp], esi
jle 0x410131
mov ebp, 0x17
sub ebp, esi
shr ebp, 3
and ebp, 7
mov ecx, edi
sub ecx, esi
mov edx, eax
sar edx, cl
mov ebx, dword [esp + 0x1c]
mov byte [ebx], dl
lea edx, [esi + 8]
add ebx, 1
cmp edx, 0x17
jg 0x410110
test ebp, ebp
je 0x410085
cmp ebp, 1
je 0x41006a
cmp ebp, 2
je 0x410058
cmp ebp, 3
je 0x410046
cmp ebp, 4
nop
je 0x410034
cmp ebp, 5
je 0x410022
cmp ebp, 6
jne 0x41044e
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
cmp edx, 0x17
jg 0x410110
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
lea ebp, [edx + 8]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 1], cl
lea ebp, [edx + 0x10]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 2], cl
lea ebp, [edx + 0x18]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 3], cl
lea ebp, [edx + 0x20]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 4], cl
lea ebp, [edx + 0x28]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 5], cl
lea ebp, [edx + 0x30]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 6], cl
lea ebp, [edx + 0x38]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 7], cl
add edx, 0x40
add ebx, 8
cmp edx, 0x17
jle 0x410085
mov edx, 0x17
sub edx, esi
shr edx, 3
lea ebx, [edx + 1]
add dword [esp + 0x1c], ebx
add esi, 8
add edx, edx
add edx, edx
add edx, edx
add esi, edx
mov edx, 1
mov ebx, dword [esp]
mov ecx, ebx
shl eax, cl
mov ebp, dword [esp + 8]
or eax, ebp
sub esi, ebx
add dword [esp + 4], 4
mov ebx, dword [esp + 4]
mov ecx, dword [esp + 0x18]
cmp ebx, ecx
jne 0x40ffa7
mov ebp, dword [esp + 0x1c]
mov edi, esi
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
mov dword [0x4bc2f4], eax
mov dword [0x4bc2f8], edi
test dl, dl
je 0x4106f0
mov dword [0x4bc300], ebp
mov dword [esp], ecx
lea edx, [ebx + 0x54]
mov dword [esp + 0x14], edx
xor edx, edx
mov edi, 0x18
mov dword [esp + 8], ebp
mov dword [esp + 0x18], esi
mov esi, dword [esp + 0x10]
mov ebx, dword [esp]
mov ebp, dword [ebx]
mov dword [esp + 4], ebp
cmp dword [esp + 0xc], esi
jle 0x410327
mov ebp, 0x17
sub ebp, esi
shr ebp, 3
and ebp, 7
mov ecx, edi
sub ecx, esi
mov edx, eax
sar edx, cl
mov ebx, dword [esp + 8]
mov byte [ebx], dl
lea edx, [esi + 8]
add ebx, 1
cmp edx, 0x17
jg 0x410306
test ebp, ebp
je 0x41027b
cmp ebp, 1
je 0x410260
cmp ebp, 2
je 0x41024e
cmp ebp, 3
nop
je 0x41023c
cmp ebp, 4
je 0x41022a
cmp ebp, 5
je 0x410218
cmp ebp, 6
nop
jne 0x410435
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
add edx, 8
add ebx, 1
cmp edx, 0x17
jg 0x410306
mov ecx, edi
sub ecx, edx
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx], cl
lea ebp, [edx + 8]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 1], cl
lea ebp, [edx + 0x10]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 2], cl
lea ebp, [edx + 0x18]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 3], cl
lea ebp, [edx + 0x20]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 4], cl
lea ebp, [edx + 0x28]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 5], cl
lea ebp, [edx + 0x30]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 6], cl
lea ebp, [edx + 0x38]
mov ecx, edi
sub ecx, ebp
mov ebp, eax
sar ebp, cl
mov ecx, ebp
mov byte [ebx + 7], cl
add edx, 0x40
add ebx, 8
cmp edx, 0x17
jle 0x41027b
mov edx, 0x17
sub edx, esi
shr edx, 3
lea ebx, [edx + 1]
add dword [esp + 8], ebx
add esi, 8
add edx, edx
add edx, edx
add edx, edx
add esi, edx
mov edx, 1
mov ebx, dword [esp + 0xc]
mov ecx, ebx
shl eax, cl
mov ebp, dword [esp + 4]
or eax, ebp
sub esi, ebx
add dword [esp], 4
mov ebx, dword [esp]
mov ecx, dword [esp + 0x14]
cmp ebx, ecx
jne 0x41019d
mov ebp, dword [esp + 8]
mov edi, esi
mov esi, dword [esp + 0x18]
mov dword [0x4bc2f4], eax
mov dword [0x4bc2f8], edi
test dl, dl
je 0x40f80d
mov dword [0x4bc300], ebp
mov eax, esi
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
ret
cmp ebp, ecx
cmovl ebp, ecx
mov esi, dword [ebx + 0x18]
cmp esi, 0x3e6
jg 0x40f8d0
cmp ebp, esi
cmovl ebp, esi
test al, al
je 0x40f8da
jmp 0x40f8d0
mov eax, 1
jmp 0x40f8b2
mov eax, 1
jmp 0x40f89e
mov eax, 1
jmp 0x40f88a
mov eax, 1
jmp 0x40f876
mov eax, 1
xor ebp, ebp
jmp 0x40f862
mov ecx, edi
sub ecx, edx
mov edx, eax
sar edx, cl
mov byte [ebx], dl
lea edx, [esi + 0x10]
mov ebx, dword [esp + 0x14]
add ebx, 2
jmp 0x40f6a6
mov ecx, edi
sub ecx, edx
mov edx, eax
sar edx, cl
mov byte [ebx], dl
lea edx, [esi + 0x10]
mov ebx, dword [esp + 0x1c]
add ebx, 2
jmp 0x40f4b0
mov ecx, edi
sub ecx, edx
mov edx, eax
sar edx, cl
mov byte [ebx], dl
lea edx, [esi + 0x10]
mov ebx, dword [esp + 0x1c]
add ebx, 2
jmp 0x40f2ab
mov ecx, edi
sub ecx, edx
mov edx, eax
sar edx, cl
mov byte [ebx], dl
lea edx, [esi + 0x10]
mov ebx, dword [esp + 0x1c]
add ebx, 2
jmp 0x40fc10
mov ecx, edi
sub ecx, edx
mov edx, eax
sar edx, cl
mov byte [ebx], dl
lea edx, [esi + 0x10]
mov ebx, dword [esp + 8]
add ebx, 2
jmp 0x410206
mov ecx, edi
sub ecx, edx
mov edx, eax
sar edx, cl
mov byte [ebx], dl
lea edx, [esi + 0x10]
mov ebx, dword [esp + 0x1c]
add ebx, 2
jmp 0x410010
mov ecx, edi
sub ecx, edx
mov edx, eax
sar edx, cl
mov byte [ebx], dl
lea edx, [esi + 0x10]
mov ebx, dword [esp + 0x14]
add ebx, 2
jmp 0x40fe10
cmp ebp, edx
cmovl ebp, edx
jmp 0x40f8d0
mov dword [ebx + 0x50], edx
jmp 0x40f1f2
mov dword [ebx + 0x34], edi
jmp 0x40f185
mov dword [ebx + 0x18], esi
jmp 0x40f117
mov byte [esp], 0
mov edx, dword [ebx + 0x20]
cmp edx, 0x3e6
jg 0x41076b
mov esi, dword [esp + 4]
cmp esi, edx
cmovl esi, edx
mov dword [esp + 4], esi
xor esi, esi
mov eax, 0xffffffff
cmp edi, 8
jle 0x40f934
mov edx, dword [ebx + 0x24]
cmp edx, 0x3e6
jg 0x410652
mov ecx, dword [esp + 4]
cmp ecx, edx
cmovl ecx, edx
mov dword [esp + 4], ecx
cmp edi, 9
jle 0x40f95b
mov edx, dword [ebx + 0x28]
cmp edx, 0x3e6
jg 0x4106b6
mov ecx, dword [esp + 4]
cmp ecx, edx
cmovl ecx, edx
mov dword [esp + 4], ecx
cmp edi, 0xa
jle 0x40f982
mov edx, dword [ebx + 0x2c]
cmp edx, 0x3e6
jg 0x4106ad
mov ecx, dword [esp + 4]
cmp ecx, edx
cmovl ecx, edx
mov dword [esp + 4], ecx
cmp edi, 0xb
jle 0x40f9a9
mov ecx, dword [ebx + 0x30]
cmp ecx, 0x3e6
jg 0x41065b
mov edx, dword [esp + 4]
cmp edx, ecx
cmovl edx, ecx
mov dword [esp + 4], edx
cmp edi, 0xc
jle 0x40f9d0
mov edx, dword [ebx + 0x34]
cmp edx, 0x3e6
jle 0x40f9ee
mov ecx, esi
test cl, cl
je 0x410580
mov dword [0x4bc308], eax
mov dword [0x4bc310], 1
mov ecx, dword [ebx + 0x38]
cmp ecx, 0x3e6
jle 0x40fa2b
mov byte [esp + 0xc], 1
mov dword [esp], 0
mov eax, dword [ebx + 0x3c]
cmp eax, 0x3e6
jg 0x41077b
mov esi, dword [esp]
cmp esi, eax
cmovl esi, eax
mov dword [esp], esi
xor esi, esi
mov ecx, 0xffffffff
cmp edi, 0xf
jle 0x40fa73
mov eax, dword [ebx + 0x40]
cmp eax, 0x3e6
jg 0x4106bf
mov edx, dword [esp]
cmp edx, eax
cmovl edx, eax
mov dword [esp], edx
cmp edi, 0x10
jg 0x4106c4
jmp 0x40fa97
mov eax, esi
test al, al
je 0x40fb42
mov eax, ecx
jmp 0x40fb3d
mov edx, eax
mov dword [0x4bc308], edx
jmp 0x40fa12
mov byte [esp + 0xc], 1
mov eax, dword [ebx + 0x50]
cmp eax, 0x3e6
jle 0x40fb21
mov edx, esi
test dl, dl
je 0x410632
mov dword [0x4bc304], ecx
mov dword [0x4bc30c], 1
jmp 0x40fb4d
mov byte [esp], 1
mov dword [esp + 4], 0
jmp 0x4104a6
mov byte [esp], 1
jmp 0x4104f7
mov byte [esp], 1
jmp 0x410566
mov byte [esp + 0xc], 1
mov edx, dword [ebx + 0x4c]
cmp edx, 0x3e6
jg 0x410613
mov eax, dword [esp]
cmp eax, edx
cmovl eax, edx
mov dword [esp], eax
cmp edi, 0x13
jg 0x410618
jmp 0x40fb04
mov byte [esp + 0xc], 1
mov eax, dword [ebx + 0x48]
cmp eax, 0x3e6
jg 0x410664
mov edx, dword [esp]
cmp edx, eax
cmovl edx, eax
mov dword [esp], edx
cmp edi, 0x12
jg 0x410669
jmp 0x40fadf
mov byte [esp], 1
jmp 0x410541
mov byte [esp], 1
jmp 0x41051c
mov byte [esp + 0xc], 1
mov eax, dword [ebx + 0x44]
cmp eax, 0x3e6
jg 0x410689
mov edx, dword [esp]
cmp edx, eax
cmovl edx, eax
mov dword [esp], edx
cmp edi, 0x11
jg 0x41068e
jmp 0x40fabb
mov ebp, dword [esp + 0x14]
mov dword [esp + 0x1c], ebp
jmp 0x40fd81
mov ebp, dword [esp + 0x14]
jmp 0x410180
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x14], ebp
jmp 0x40ff81
mov dword [esp + 0x48], edx
mov edx, dword [esp + 8]
mov dword [esp + 0x44], edx
mov dword [esp + 0x40], ebx
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
jmp sym._L3_pack_sf_short_MPEG2
mov eax, dword [ebx + 0x50]
cmp eax, 0x3e6
jg 0x410626
mov edi, dword [esp]
cmp edi, eax
cmovl edi, eax
mov dword [esp], edi
jmp 0x40fb35
mov edx, dword [ebx + 0x34]
cmp edx, 0x3e6
jg 0x410575
mov ecx, dword [esp + 4]
cmp ecx, edx
cmovl ecx, edx
mov dword [esp + 4], ecx
jmp 0x40fa00
mov byte [esp + 0xc], 0
jmp 0x4105a5
xor esi, esi
mov eax, 0xffffffff
mov byte [esp], 1
jmp 0x4104d2
xor esi, esi
mov ecx, 0xffffffff
mov byte [esp + 0xc], 1
jmp 0x4105ce
mov byte [esp], 1
jmp 0x4104d2
mov byte [esp + 0xc], 1
jmp 0x4105ce
mov dword [esp + 4], 2
jmp 0x40f02f
mov ebp, 2
jmp 0x40f009